summaryrefslogtreecommitdiffstats
path: root/drivers (follow)
Commit message (Collapse)AuthorAgeFilesLines
* [SCSI] mpt2sas: Fix possible integer truncation of cpu_countRoland Dreier2011-12-151-1/+1
| | | | | | | | | | | | | | | | | | | When computing reply_queue_count (the number of MSI-X vectors to use), the driver does ioc->reply_queue_count = min_t(u8, ioc->cpu_count, ioc->msix_vector_count); However, on a big machine, ioc->cpu_count could be outside the range that fits in a u8; eg a system with 256 CPUs will end up reply_queue_count set to 0. Fix this by calculating the minimum as ints and then letting the assignment to reply_queue_count handle integer demotion. Signed-off-by: Roland Dreier <roland@purestorage.com> Acked-by: "Nandigama, Nagalakshmi" <Nagalakshmi.Nandigama@lsi.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] mpt2sas: Fix leak on mpt2sas_base_attach() error pathRoland Dreier2011-12-151-1/+1
| | | | | | | | | | | | | | | Commit 911ae9434f83 ("[SCSI] mpt2sas: Added NUNA IO support in driver which uses multi-reply queue support of the HBA") added new allocations to the beginning of mpt2sas_base_attach(), which means directly returning an error on failure of mpt2sas_base_map_resources() will leak those allocations. Fix this by doing "goto out_free_resources" in this place too, as the rest of the function does. Signed-off-by: Roland Dreier <roland@purestorage.com> Acked-by: "Nandigama, Nagalakshmi" <Nagalakshmi.Nandigama@lsi.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] mpt2sas : Bump driver vesion to 12.100.00.00nagalakshmi.nandigama@lsi.com2011-12-151-2/+2
| | | | | | | Bump driver vesion to 12.100.00.00 Signed-off-by: Nagalakshmi Nandigama <nagalakshmi.nandigama@lsi.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] mpt2sas : Fix for memory allocation error for large host creditsnagalakshmi.nandigama@lsi.com2011-12-152-58/+29
| | | | | | | | | | | | | | | | | The amount of memory required for tracking chain buffers is rather large, and when the host credit count is big, memory allocation failure occurs inside __get_free_pages. The fix is to limit the number of chains to 100,000. In addition, the number of host credits is limited to 30,000 IOs. However this limitation can be overridden this using the command line option max_queue_depth. The algorithm for calculating the reply_post_queue_depth is changed so that it is equal to (reply_free_queue_depth + 16), previously it was (reply_free_queue_depth * 2). Signed-off-by: Nagalakshmi Nandigama <nagalakshmi.nandigama@lsi.com> Cc: stable@kernel.org Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] mpt2sas: Do not retry a timed out direct IO for warpdrivenagalakshmi.nandigama@lsi.com2011-12-151-2/+4
| | | | | | | | | | | | | | When an I/O request to a WarpDrive is timed out by SML and if the I/O request to the WarpDrive is sent as direct I/O then the aborted direct I/O will be retried as normal Volume I/O and which results in failure of Target Reset and results in host reset. The fix is to not retry a failed IO to volume when the original IO was sent as direct IO with an ioc status MPI2_IOCSTATUS_SCSI_TASK_TERMINATED. Signed-off-by: Nagalakshmi Nandigama <nagalakshmi.nandigama@lsi.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] mpt2sas: Release spinlock for the raid device list before blocking itnagalakshmi.nandigama@lsi.com2011-12-151-3/+4
| | | | | | | | | | | | Added code to release the spinlock that is used to protect the raid device list before calling a function that can block. The blocking was causing a reschedule, and subsequently it is tried to acquire the same lock, resulting in a panic (NMI Watchdog detecting a CPU lockup). Signed-off-by: Nagalakshmi Nandigama <nagalakshmi.nandigama@lsi.com> Cc: stable@kernel.org Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] mpt2sas: MPI next revision header updatenagalakshmi.nandigama@lsi.com2011-12-154-23/+90
| | | | | | | | | | | | 1)Removed Power Management Control option for PCIe link. 2)Added RAID Action for performing a compatibility check. Added product-specific range to RAID Action values. 3)Added PhysicalPort field to SAS Device Status Change Event data. 4)Added SpinupFlags field containing a Disable Spin-up bit to the SpinupGroupParameters fields of SAS IO Unit Page 4. Signed-off-by: Nagalakshmi Nandigama <nagalakshmi.nandigama@lsi.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] mpt2sas: Added support for customer specific brandingnagalakshmi.nandigama@lsi.com2011-12-152-0/+28
| | | | | Signed-off-by: Nagalakshmi Nandigama <nagalakshmi.nandigama@lsi.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] mpt2sas: Increase max transfer support from 4MB to 16MBnagalakshmi.nandigama@lsi.com2011-12-151-5/+5
| | | | | | | | Increase max transfer support from 4MB to 16MB. This is done by changing the shost->max_sector from 8192 to 32767 Signed-off-by: Nagalakshmi Nandigama <nagalakshmi.nandigama@lsi.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] mpt2sas: Support for greater than 2TB capacity WarpDrivenagalakshmi.nandigama@lsi.com2011-12-152-43/+74
| | | | | | | | The driver is modified to allow access to the greater than 2TB WarpDrive and properly handle direct-io mapping for WarpDrive volumes greater than 2TB. Signed-off-by: Nagalakshmi Nandigama <nagalakshmi.nandigama@lsi.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] mpt2sas: Bump driver version to 11.100.00.00nagalakshmi.nandigama@lsi.com2011-12-151-2/+2
| | | | | Signed-off-by: Nagalakshmi Nandigama <nagalakshmi.nandigama@lsi.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] mpt2sas: Rearrange the the code so that the completion queues are ↵nagalakshmi.nandigama@lsi.com2011-12-153-11/+12
| | | | | | | initialized prior to sending the request to controller firmware Signed-off-by: Nagalakshmi Nandigama <nagalakshmi.nandigama@lsi.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] mpt2sas: Do not set sas_device->starget to NULL from the ↵nagalakshmi.nandigama@lsi.com2011-12-151-8/+12
| | | | | | | | | | | | slave_destroy callback when all the LUNS have been deleted If the sas_device->starget to NULL from slave_destroy callback for LUN=1 even though LUN=0 exist, results in entire target getting deleted. To resolve the issue, the driver should only set sas_device->starget to NULL when all the LUNS have been deleted from the slave_destroy. Signed-off-by: Nagalakshmi Nandigama <nagalakshmi.nandigama@lsi.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] mpt2sas: MPI next revision header updatenagalakshmi.nandigama@lsi.com2011-12-154-22/+36
| | | | | | | | | | | | 1) Added product specific range of ImageType macros for the Extended Image Header. 2) Added Flags field and related defines to MPI2_TOOLBOX_ISTWI_READ_WRITE_REQUEST to support automatic reserve/release and page addressing. Signed-off-by: Nagalakshmi Nandigama <nagalakshmi.nandigama@lsi.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] mpt2sas: Adding support for customer specific brandingnagalakshmi.nandigama@lsi.com2011-12-152-2/+7
| | | | | Signed-off-by: Nagalakshmi Nandigama <nagalakshmi.nandigama@lsi.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] mpt2sas: When IOs are terminated, update the result to DID_SOFT_ERROR ↵nagalakshmi.nandigama@lsi.com2011-12-151-0/+2
| | | | | | | to avoid infinite resets Signed-off-by: Nagalakshmi Nandigama <nagalakshmi.nandigama@lsi.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] mpt2sas: Better handling DEAD IOC (PCI-E LInk down) error conditionnagalakshmi.nandigama@lsi.com2011-12-153-0/+63
| | | | | | | | | | | | Detection of Dead IOC has been done in fault_reset_work thread. If IOC Doorbell is 0xFFFFFFFF, it will be detected as non-operation/DEAD IOC. When a DEAD IOC is detected, the code is modified to remove that IOC and all its attached devices from OS. The PCI layer API pci_remove_bus_device() is called to remove the dead IOC. Signed-off-by: Nagalakshmi Nandigama <nagalakshmi.nandigama@lsi.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] be2iscsi: cleanup a min_t() callDan Carpenter2011-12-151-2/+3
| | | | | | | | | | | | | | | | | | | | "sense_len" was declared as int type but actually it only stores a u16 value that comes from hardware. The cast to u16 in min_t() confuses static analysis because it truncates the int to u16 so I've fixed the declaration to reflect that "sense_len" is just a u16. Also there was a call to cpu_to_be16() which I've changed to be16_to_cpu(). The functions are equivalent, but obviously the hardware is big endian and we're doing the min_t() comparison on CPU endian values. This whole patch is just a cleanup and doesn't affect how the code works. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Reviewed-by: Mike Christie <michaelc@cs.wisc.edu> Acked-by: Jayamohan Kallickal <Jayamohan.kallickal@emulex.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] hpsa: add the Smart Array 5i to the kdump blacklistTomas Henzl2011-12-151-0/+2
| | | | | | | | | The '5i' controller freezes when a kdump is attemted. This patch admits it and adds the controller to the unresetable list. Signed-off-by: Tomas Henzl <thenzl@redhat.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] hpsa: Add IRQF_SHARED back in for the non-MSI(X) interrupt handlerStephen M. Cameron2011-12-151-2/+2
| | | | | | | | | | | | IRQF_SHARED is required for older controllers that don't support MSI(X) and which may end up sharing an interrupt. All the controllers hpsa normally supports have MSI(X) capability, but older controllers may be encountered via the hpsa_allow_any=1 module parameter. Also remove deprecated IRQF_DISABLED. Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] mptsas: Add device ID for SAS1068_820XELP.Chandrakala Chavva2011-12-152-0/+3
| | | | | | | Signed-off-by: Chandrakala Chavva <cchavva@caviumnetworks.com> Signed-off-by: David Daney <david.daney@cavium.com> Acked-by: "Nandigama, Nagalakshmi" <Nagalakshmi.Nandigama@lsi.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] fusion: ensure NUL-termination of MptCallbacksName elementsFerenc Wagner2011-12-152-3/+5
| | | | | | | | | | | | | | Using strlcpy instead of memcpy makes the strlen() calls superfluous and also ensures zero-termination of the copied string. At the same time get rid of the magic constant 50. Actually, I can't see why copying the callback name is necessary instead of simply storing a pointer to it (just like to the callback function itself), but that goes beyond the scope of this fix. Signed-off-by: Ferenc Wagner <wferi@niif.hu> Acked-by: "Nandigama, Nagalakshmi" <Nagalakshmi.Nandigama@lsi.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] qla2xxx: remove redundant semicolonJesper Juhl2011-12-151-1/+1
| | | | | | | | One ';' at the end of the return statement is enough. Signed-off-by: Jesper Juhl <jj@chaosbits.net> Acked-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] qla2xxx: Do not check for minidump when device state is ↵Chad Dupuis2011-12-151-1/+0
| | | | | | | QLA82XX_DEV_READY. Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] qla2xxx: Move initialization of some variables before iospace_config.Chad Dupuis2011-12-151-5/+5
| | | | | | | | Some variables need to be initialized before we config PCI I/O config space or else strange firmware initialization errors may occur. Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] qla2xxx: Ensure there's enough request-queue space for passthru IOCBs.Andrew Vasquez2011-12-154-2/+27
| | | | | | | | | | | The driver should ensure there's a sufficient number of IOCBs to satisfy the number of scatter-gather entries specified in the command. Add a 'count' to the control structure, srb_ctx, to use in qla2x00_alloc_iocbs(). Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] qla2xxx: Implement FCP priority tagging for 82xx adapters.Saurav Kashyap2011-12-153-2/+16
| | | | | | | | This provides a capability to set a priority in the FCP packet. Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] qla2xxx: Consolidated IOCB processing routines.Giridhar Malavali2011-12-154-583/+522
| | | | | | Signed-off-by: Giridhar Malavali <giridhar.malavali@qlogic.com> Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] qla2xxx: Process marker IOCB request on request queue 0.Giridhar Malavali2011-12-151-0/+1
| | | | | | | | | When multiple request queues are created process the marker IOCB request on request queue 0. Signed-off-by: Giridhar Malavali <giridhar.malavali@qlogic.com> Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] qla2xxx: Added a new entry to ISP specific function pointers structure.Giridhar Malavali2011-12-152-124/+133
| | | | | | | | | Add a new function to ISP specific pointers structure to take care of ISP specific PCI IO space configuration. Signed-off-by: Giridhar Malavali <giridhar.malavali@qlogic.com> Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] qla2xxx: Corrected the display of firmware dump availability for ISP82xx.Giridhar Malavali2011-12-151-4/+4
| | | | | | Signed-off-by: Giridhar Malavali <giridhar.malavali@qlogic.com> Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] qla2xxx: Corrected the default setting of the help text of Minidump ↵Giridhar Malavali2011-12-151-1/+1
| | | | | | | | capture mask. Signed-off-by: Giridhar Malavali <giridhar.malavali@qlogic.com> Signed-off-by: Chad Dupuis <chad.dupuis@qlogic> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] qla2xxx: Corrections to returned sysfs error codes.Joe Carnuccio2011-12-151-2/+2
| | | | | | | | | Correct the erroneous return codes introduced by the following patch: "Return sysfs error codes appropriate to conditions". Signed-off-by: Joe Carnuccio <joe.carnuccio@qlogic.com> Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] qla2xxx: Correct report-id acquisition checkGiridhar Malavali2011-12-151-1/+1
| | | | | | Signed-off-by: Giridhar Malavali <giridhar.malavali@qlogic.com> Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] qla2xxx: Fix to include FCE data as part of dump.Giridhar Malavali2011-12-151-1/+1
| | | | | | Signed-off-by: Giridhar Malavali <giridhar.malavali@qlogic.com> Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] qla2xxx: Limit excessive DPC cycles.Andrew Vasquez2011-12-151-13/+8
| | | | | | | | | The 'continue' cases neglected to place the thread in an interruptible state, causing the DPC routine to wake immediately. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] qla2xxx: Only read requested mailbox registers.Andrew Vasquez2011-12-151-9/+25
| | | | | | | | When reading the incoming mailbox registers, read only the specified ones. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] qla2xxx: Proper cleanup of pass through commands when firmware ↵Giridhar Malavali2011-12-152-31/+61
| | | | | | | | | returns error. [jejb: fixed up checkpatch and casting errors] Signed-off-by: Giridhar Malavali <giridhar.malavali@qlogic.com> Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] qla2xxx: Update to dynamic logging.Chad Dupuis2011-12-1510-216/+199
| | | | | | | | | | | | | | | | | | | | | | This patch contains minor fixes to our new logging infrastructure: - Remove extranous messages. - Re-add 'nexus' and 'hdl' information. - Adjusted the message ids to fill up the holes. - Display FCP_CMND priority on update. - Log only mail box error conditions. - Do not print "Firmware ready **** FAILED ****" if cable is unplugged. - Drop noisy 'fw_state...curr time...' message. - Correct nexus display during abort. - Add a special case error-logging set to '1'. - Catagorize I/O exception display handling. - Correct the bsg msg code printing. - Dont use dynamic logging after host is removed. Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] qla2xxx: Make the logging functions verify their arguments and fixed ↵Joe Perches2011-12-158-25/+26
| | | | | | | | | the current broken uses as appropriate. Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] qla2xxx: Use less stack to emit logging messages.Joe Perches2011-12-152-115/+107
| | | | | | | | | | | | Return early when logging level too low. Use normal kernel codeing style for function braces. Add const where appropriate to logging functions. Remove now unused #define QL_DBG_BUF_LEN. Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] bfa: fix endian and bit field check bugJing Huang2011-12-152-5/+5
| | | | | | | | | Fix some endian issue. __BIGENDIAN is not defined and it needs to be replaced with __BIG_ENDIAN. Also fixed a bug in bit field access. These two issues were reported by Dan Carpenter. Signed-off-by: Jing Huang <huangj@brocade.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] bfa: fix formating and checkpatch issuesJing Huang2011-12-152-219/+221
| | | | | | | | Fixed code indentation and alignment issues. Fixed all checkpatch warnings. Signed-off-by: Jing Huang <huangj@brocade.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] scsi_dh: code cleanup and remove the references to scsi_dev_infoMoger, Babu2011-12-152-59/+0
| | | | | | | | | All the handlers have now implemented the match function so We don't need to use scsi_dev_info any more for matching purposes. Signed-off-by: Babu Moger <babu.moger@netapp.com> Acked-by: Hannes Reinecke <hare@suse.de> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] scsi_dh_rdac: Adding the match function for rdac device handlerMoger, Babu2011-12-151-0/+19
| | | | | | | | | | | This patch introduces the match function for rdac device handler. Without this, sometimes handler attach fails during the device_add. Included check for TPGS bit before proceeding further. The match function was introduced by commit 6c3633d08acf514e2e89aa95d2346ce9d64d719a Signed-off-by: Babu Moger <babu.moger@netapp.com> Acked-by: Hannes Reinecke <hare@suse.de> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] scsi_dh_hp_sw: Adding the match function for hp_sw device handlerMoger, Babu2011-12-151-0/+19
| | | | | | | | | | | This patch introduces the match function for hp_sw device handler. Included the check for TPGS bit before proceeding further per Hannes comment. The match function was introduced by commit 6c3633d08acf514e2e89aa95d2346ce9d64d719a Signed-off-by: Babu Moger <babu.moger@netapp.com> Acked-by: Hannes Reinecke <hare@suse.de> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] scsi_dh_emc: Add a match function for emc device handlerMoger, Babu2011-12-151-0/+19
| | | | | | | | | | This patch introduces the match function for emc device handler. Included check for TPGS bit before proceeding further. The match function was introduced by commit 6c3633d08acf514e2e89aa95d2346ce9d64d719a Signed-off-by: Babu Moger <babu.moger@netapp.com> Acked-by: Hannes Reinecke <hare@suse.de> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] bnx2i: Fixed kernel panic caused by unprotected task->sc->request derefEddie Wai2011-12-141-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | During session recovery, the conn_stop call will trigger a flush to all outstanding SCSI cmds in the xmit queue. This will set all outstanding task->sc to NULL prior to the session_teardown call which frees the task memory. In the bnx2i SCSI response processing path, only the task was being checked for NULL under the session lock before the task->sc->request dereferencing. If there are outstanding SCSI cmd responses pending for process, the following kernel panic can be exposed where task->sc was found to be NULL. Call Trace: [ 69.720205] [<ffffffffa040d0d0>] bnx2i_process_new_cqes+0x290/0x3c0 [bnx2i] [ 69.804289] [<ffffffffa040d233>] bnx2i_fastpath_notification+0x33/0xa0 [bnx2 i] [ 69.891490] [<ffffffffa040d37b>] bnx2i_indicate_kcqe+0xdb/0x330 [bnx2i] [ 69.971427] [<ffffffffa03eac5e>] service_kcqes+0x16e/0x1d0 [cnic] [ 70.045132] [<ffffffffa03eacea>] cnic_service_bnx2x_kcq+0x2a/0x50 [cnic] [ 70.126105] [<ffffffffa03ead53>] cnic_service_bnx2x_bh+0x43/0x140 [cnic] [ 70.207081] [<ffffffff81060676>] tasklet_action+0x66/0x110 [ 70.273521] [<ffffffff8106025f>] __do_softirq+0xef/0x220 [ 70.337887] [<ffffffff81447ebc>] call_softirq+0x1c/0x30 This patch adds the !task->sc check and also protects the sc dereferencing under the session lock. Signed-off-by: Eddie Wai <eddie.wai@broadcom.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] qla4xxx: check for failed conn setupMike Christie2011-12-141-0/+3
| | | | | | | | iscsi_conn_setup can fail so we must check for NULL being returned. Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
* [SCSI] qla4xxx: a small loop fixTomas Henzl2011-12-141-1/+3
| | | | | | | | | | | | | | | | | | | | | | When the qla4xxx_get_fwddb_entry returns QLA_ERROR the nex_idx is not updated, for (idx = 0; idx < max_ddbs; idx = next_idx) { ret = qla4xxx_get_fwddb_entry(ha, idx, NULL, 0, NULL, &next_idx, &state, &conn_err, NULL, NULL); if (ret == QLA_ERROR) continue; This means there is a risk that the 'idx < max_ddbs' condition will never met and the loop will loop forever. Fix this by explicitly increasing the next_idx in the error condition. Maybe a break instead of continue is more appropriate, leaving the decision on the qlogic maintainer. Signed-off-by: Tomas Henzl <thenzl@redhat.com> Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <JBottomley@Parallels.com>