a257bf905e
8.3.1 Fixes/Changes : - Fix incorrect byte-swapping on word 4 of IOCB (data length) which caused LUNs to not be discovered on big-endian (e.g. PPC) - Remove a bad cast of MBslimaddr which loses the __iomem (sparse) - Make lpfc_debugfs_mask_disc_trc static (sparse) - Correct misspelled word BlockGuard in lpfc_logmsg.h comment - Replaced repeated code segment for canceling IOCBs from a list with a function call, lpfc_sli_cancel_iocbs(). - Increased HBQ buffers to support 40KB SSC sequences. - Added sysfs interface to update speed and topology parameter without link bounce. - Fixed bug with sysfs fc_host WWNs not being updated after changing the WWNs. - Check if the active mailbox is NULL in the beginning of the mailbox timeout handler - fixes panic in the mailbox timeout handler while running IO stress test - Fixed system panic in lpfc_pci_remove_one() due to ndlp indirect reference to phba through vport - Removed de-reference of scsi device after call to scsi_done() to fix panic in scsi completion path while accessing scsi device after scsi_done is called. - Fixed "Nodelist not empty" message when unloading the driver after target reboot test - Added LP2105 HBA model description - Added code to print all 16 words of unrecognized ASYNC events - Fixed memory leak in vport create + delete loop - Added support for handling dual error bit from HBA - Fixed a driver NULL pointer dereference in lpfc_sli_process_sol_iocb - Fixed a discovery bug with FC switch reboot in lpfc_setup_disc_node - Take NULL termintator into account when calculating available buffer space Signed-off-by: James Smart <james.smart@emulex.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
50 lines
2.8 KiB
C
50 lines
2.8 KiB
C
/*******************************************************************
|
|
* This file is part of the Emulex Linux Device Driver for *
|
|
* Fibre Channel Host Bus Adapters. *
|
|
* Copyright (C) 2004-2008 Emulex. All rights reserved. *
|
|
* EMULEX and SLI are trademarks of Emulex. *
|
|
* www.emulex.com *
|
|
* *
|
|
* This program is free software; you can redistribute it and/or *
|
|
* modify it under the terms of version 2 of the GNU General *
|
|
* Public License as published by the Free Software Foundation. *
|
|
* This program is distributed in the hope that it will be useful. *
|
|
* ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND *
|
|
* WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, *
|
|
* FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT, ARE *
|
|
* DISCLAIMED, EXCEPT TO THE EXTENT THAT SUCH DISCLAIMERS ARE HELD *
|
|
* TO BE LEGALLY INVALID. See the GNU General Public License for *
|
|
* more details, a copy of which can be found in the file COPYING *
|
|
* included with this package. *
|
|
*******************************************************************/
|
|
|
|
#define LOG_ELS 0x1 /* ELS events */
|
|
#define LOG_DISCOVERY 0x2 /* Link discovery events */
|
|
#define LOG_MBOX 0x4 /* Mailbox events */
|
|
#define LOG_INIT 0x8 /* Initialization events */
|
|
#define LOG_LINK_EVENT 0x10 /* Link events */
|
|
#define LOG_IP 0x20 /* IP traffic history */
|
|
#define LOG_FCP 0x40 /* FCP traffic history */
|
|
#define LOG_NODE 0x80 /* Node table events */
|
|
#define LOG_TEMP 0x100 /* Temperature sensor events */
|
|
#define LOG_BG 0x200 /* BlockGuard events */
|
|
#define LOG_MISC 0x400 /* Miscellaneous events */
|
|
#define LOG_SLI 0x800 /* SLI events */
|
|
#define LOG_FCP_ERROR 0x1000 /* log errors, not underruns */
|
|
#define LOG_LIBDFC 0x2000 /* Libdfc events */
|
|
#define LOG_VPORT 0x4000 /* NPIV events */
|
|
#define LOG_ALL_MSG 0xffff /* LOG all messages */
|
|
|
|
#define lpfc_printf_vlog(vport, level, mask, fmt, arg...) \
|
|
do { \
|
|
{ if (((mask) &(vport)->cfg_log_verbose) || (level[1] <= '3')) \
|
|
dev_printk(level, &((vport)->phba->pcidev)->dev, "%d:(%d):" \
|
|
fmt, (vport)->phba->brd_no, vport->vpi, ##arg); } \
|
|
} while (0)
|
|
|
|
#define lpfc_printf_log(phba, level, mask, fmt, arg...) \
|
|
do { \
|
|
{ if (((mask) &(phba)->pport->cfg_log_verbose) || (level[1] <= '3')) \
|
|
dev_printk(level, &((phba)->pcidev)->dev, "%d:" \
|
|
fmt, phba->brd_no, ##arg); } \
|
|
} while (0)
|