aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
* [SCSI] target: Fix task->task_execute_queue=1 clear bug + LUN_RESET OOPsNicholas Bellinger2011-05-27
| | | | | | | | | | | | | | | | | | | | This patch fixes a bug where task->task_execute_queue=1 was not being cleared once se_task had been removed from se_device->execute_task_list, resulting in an OOPs in core_tmr_lun_reset() for the task->task_active=0 case where transport_remove_task_from_execute_queue() was incorrectly being called. This patch fixes two cases in transport_get_task_from_execute_queue() and transport_remove_task_from_execute_queue() to properly clear task->task_execute_queue=0 once list_del(&task->t_execute_list) has been called. It also adds an explict check in transport_remove_task_from_execute_queue() to dump_stack + return if called with task->task_execute_queue=0. Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org> Cc: stable@kernel.org Signed-off-by: James Bottomley <jbottomley@parallels.com>
* [SCSI] target: Fix bug with task_sg chained transport_free_dev_tasks releaseNicholas Bellinger2011-05-27
| | | | | | | | | | | | | | | | | | | | This patch addresses a bug in the target core release path for HW operation where transport_free_dev_tasks() was incorrectly being called from transport_lun_remove_cmd() while releasing a se_cmd reference and calling struct target_core_fabric_ops->queue_data_in(). This would result in a OOPs with HW target mode when the release of se_task->task_sg[] would happen before pci_unmap_sg() can be called in HW target mode fabric module code. This patch addresses the issue by moving transport_free_dev_tasks() from transport_lun_remove_cmd() into transport_generic_free_cmd(), and adding TRANSPORT_FREE_CMD_INTR and transport_generic_free_cmd_intr() to allow se_cmd descriptor release to happen fromfrom within transport_processing_thread() process context when release of se_cmd is not possible from HW interrupt context. Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org> Cc: stable@kernel.org Signed-off-by: James Bottomley <jbottomley@parallels.com>
* [SCSI] target: Fix interrupt context bug with stats_lock and core_tmr_alloc_reqNicholas Bellinger2011-05-27
| | | | | | | | | | | | | | | | This patch fixes two bugs wrt to the interrupt context usage of target core with HW target mode drivers. It first converts the usage of struct se_device->stats_lock in transport_get_lun_for_cmd() and core_tmr_lun_reset() to properly use spin_lock_irq() to address an BUG with CONFIG_LOCKDEP_SUPPORT=y enabled. This patch also adds a 'in_interrupt()' check to allow GFP_ATOMIC usage from core_tmr_alloc_req() to fix a 'sleeping in interrupt context' BUG with HW target fabrics that require this logic to function. Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org> Cc: stable@kernel.org Signed-off-by: James Bottomley <jbottomley@parallels.com>
* [SCSI] target: Fix multi task->task_sg[] chaining logic bugNicholas Bellinger2011-05-27
| | | | | | | | | | | | | | | | | | | This patch fixes a bug in transport_do_task_sg_chain() used by HW target mode modules with sg_chain() to provide a single sg_next() walkable memory layout for use with pci_map_sg() and friends. This patch addresses an issue with mapping multiple small block max_sector tasks across multiple struct se_task->task_sg[] mappings for HW target mode operation. This was causing OOPs with (cmd->t_task->t_tasks_no > 1) I/O traffic for HW target drivers using transport_do_task_sg_chain(), and has been tested so far with tcm_fc(openfcoe), tcm_qla2xxx, and ib_srpt fabrics with t_tasks_no > 1 IBLOCK backends using a smaller max_sectors to trigger the original issue. Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org> Acked-by: Kiran Patil <kiran.patil@intel.com> Cc: stable@kernel.org Signed-off-by: James Bottomley <jbottomley@parallels.com>
* Merge branch 'master' of /pub/scm/linux/kernel/git/jejb/scsi-misc-2.6 into ↵Nicholas Bellinger2011-05-19
|\ | | | | | | for-40-iscsi-target-merge-v3
| * [SCSI] qla2xxx: Refactor call to qla2xxx_read_sfp for thermal temperature.Joe Carnuccio2011-05-17
| | | | | | | | | | | | | | | | | | | | | | | | Eliminate duplicate code by refactoring the calls to qla2xxx_read_sfp() in qla2x00_get_thermal_temp(). This keeps the parameter values separate from the mailbox register mechanics. This also allows qla2xxx_read_sfp() to be the sole "spec" for READ SFP semantics. Signed-off_by: Joe Carnuccio <joe.carnuccio@qlogic.com> Signed-off-by: Madhuranath Iyengar <Madhu.Iyengar@qlogic.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] qla2xxx: Unify the read/write sfp mailbox command routines.Joe Carnuccio2011-05-17
| | | | | | | | | | | | | | | | | | | | Make the read/write sfp mailbox command routines uniform, and remove redundancy. Also protect against attempting to do a single byte dma in these routines. Signed-off-by: Joe Carnuccio <joe.carnuccio@qlogic.com> Signed-off-by: Madhuranath Iyengar <Madhu.Iyengar@qlogic.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] qla2xxx: Clear complete initialization control block.Andrew Vasquez2011-05-17
| | | | | | | | | | | | | | | | | | | | Use proper init_cb_size member which takes into account MID/non-MID init-cb structure sizes. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: Madhuranath Iyengar <Madhu.Iyengar@qlogic.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] qla2xxx: Allow an override of the registered maximum LUN.Andrew Vasquez2011-05-17
| | | | | | | | | | | | | | | | | | | | | | | | The 'max_lun' value registered for each scsi_host is currently capped at 0xffff. The new module parameter can allow for 2nd-level flat-space addressing method-infrastructure to be supported. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: Madhuranath Iyengar <Madhu.Iyengar@qlogic.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] qla2xxx: Add host number in reset and quiescent message logs.Saurav Kashyap2011-05-17
| | | | | | | | | | | | | | Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Madhuranath Iyengar <Madhu.Iyengar@qlogic.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] qla2xxx: Correctly read sfp single byte mailbox register.Joe Carnuccio2011-05-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When reading a single byte using the READ SFP mailbox command, the single byte of data is returned in MB[1] and not MB[8]. The reason that MB[8] was being used is that the spec was unclear as it evolved over time; and we have not needed to read a single byte until recently. Signed-off-by: Joe Carnuccio <joe.carnuccio@qlogic.com> Signed-off-by: Madhuranath Iyengar <Madhu.Iyengar@qlogic.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] qla2xxx: Add qla82xx_rom_unlock() function.Chad Dupuis2011-05-17
| | | | | | | | | | | | | | | | | | | | Encapsulate the unlocking of the ROM lock in a function for better code readability. Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: Madhuranath Iyengar <Madhu.Iyengar@qlogic.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] qla2xxx: Log if qla82xx firmware fails to load from flash.Chad Dupuis2011-05-17
| | | | | | | | | | | | | | Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: Madhuranath Iyengar <Madhu.Iyengar@qlogic.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] qla2xxx: Use passed in host to initialize local scsi_qla_host in ↵Madhuranath Iyengar2011-05-17
| | | | | | | | | | | | | | | | queuecommand function Signed-off-by: Madhuranath Iyengar <Madhu.Iyengar@qlogic.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] qla2xxx: Correct buffer start in edc sysfs debug print.Joe Carnuccio2011-05-17
| | | | | | | | | | | | | | | | | | The debug print prints the first byte of the buffer which is buf[8]. Signed-off-by: Joe Carnuccio <joe.carnuccio@qlogic.com> Signed-off-by: Madhuranath Iyengar <Madhu.Iyengar@qlogic.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] qla2xxx: Update firmware version after flash update for ISP82xx.Saurav Kashyap2011-05-17
| | | | | | | | | | | | | | | | | | | | | | | | The driver keeps a copy of the fw_version within the ha structure. For ISP82xx, this local copy doesn't get updated, and as a result, the old firmware version ends up getting displayed. This patch fixes this issue. Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Madhuranath Iyengar <Madhu.Iyengar@qlogic.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] qla2xxx: Fix hang during driver unload when vport is active.Arun Easi2011-05-17
| | | | | | | | | | | | | | | | | | | | | | | | Bumping ref count during fc_vport_terminate() was the cause. vport delete would wait for ref count to drop to zero and that would never happen. Cc: stable@kernel.org Signed-off-by: Arun Easi <arun.easi@qlogic.com> Signed-off-by: Madhuranath Iyengar <Madhu.Iyengar@qlogic.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] qla2xxx: Properly set the dsd_list_len for dsd_chaining in cmd type 6.Andrew Vasquez2011-05-17
| | | | | | | | | | | | | | | | | | | | | | | | | | The firmware spec has the fcp_data_dseg_len defined as a 32-bit value, while the corresponding field in the driver structure has it defined as a 16-bit value. Cc: stable@kernel.org Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: Madhuranath Iyengar <Madhu.Iyengar@qlogic.com> Cc: stable@kernel.org Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] qla2xxx: Fix virtual port failing to login after chip reset.Saurav Kashyap2011-05-17
| | | | | | | | | | | | | | | | | | | | | | | | This patch ensures qla82xx_watchdog is not being run for the vport. It also makes sure that beacon ON is not done for the vport, as it will lead to the waking up of the dpc thread again and again. Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Madhuranath Iyengar <Madhu.Iyengar@qlogic.com> Cc: stable@kernel.org Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] qla2xxx: Fix vport delete hang when logins are outstanding.Arun Easi2011-05-17
| | | | | | | | | | | | | | | | | | | | Timer is required to flush out entries that may be present in work queues. Cc: stable@kernel.org Signed-off-by: Arun Easi <arun.easi@qlogic.com> Signed-off-by: Madhuranath Iyengar <Madhu.Iyengar@qlogic.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] hpsa: Change memset using sizeof(ptr) to sizeof(*ptr)Joe Perches2011-05-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Not at all sure this is correct or appropriate to change, but this seems odd. Found via coccinelle script @@ type T; T* ptr; expression E1; @@ * memset(E1, 0, sizeof(ptr)); Signed-off-by: Joe Perches <joe@perches.com> Acked-by: Stephen M. Cameron <scameron@beardog.cce.hp.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] ipr: Rate limit DMA mapping errorsAnton Blanchard2011-05-17
| | | | | | | | | | | | | | | | | | | | | | I noticed a stream of errors from the IPR driver while doing IOMMU fault injection. Rate limit the errors so we don't clog up the console and logfiles. Signed-off-by: Anton Blanchard <anton@samba.org> Acked-by: Brian King <brking@linux.vnet.ibm.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] hpsa: add P2000 to list of shared SAS devicesStephen M. Cameron2011-05-17
| | | | | | | | | | | | Signed-off-by: Scott Teel <scott.stacy.teel@hp.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] hpsa: do not attempt PCI power management reset method if we know it ↵Stephen M. Cameron2011-05-17
| | | | | | | | | | | | | | | | | | | | won't work. Just go straight to the soft-reset method instead. Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] hpsa: remove superfluous sleeps around reset codeStephen M. Cameron2011-05-17
| | | | | | | | | | | | Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] hpsa: do soft reset if hard reset is brokenStephen M. Cameron2011-05-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | on driver load, if reset_devices is set, and the hard reset attempts fail, try to bring up the controller to the point that a command can be sent, and send it a soft reset command, then after the reset undo whatever driver initialization was done to get it to the point to take a command, and re-do it after the reset. This is to get kdump to work on all the "non-resettable" controllers (except 64xx controllers which can't be reset due to the potentially shared cache module.) Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] hpsa: use new doorbell-bit-5 reset methodStephen M. Cameron2011-05-17
| | | | | | | | | | | | | | | | | | | | | | | | The bit-2-doorbell reset method seemed to cause (survivable) NMIs on some systems and (unsurvivable) IOCK NMIs on some G7 servers. Firmware guys implemented a new doorbell method to alleviate these problems triggered by bit 5 of the doorbell register. We want to use it if it's available. Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] hpsa: remove atrophied hpsa_scsi_setup functionStephen M. Cameron2011-05-17
| | | | | | | | | | | | | | | | | | hpsa_scsi_setup at one time contained enough code to justify its existence, but that time has passed. Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] hpsa: clarify messages around reset behaviorStephen M. Cameron2011-05-17
| | | | | | | | | | | | | | | | | | | | | | | | | | When waiting for the board to become "not ready" don't print a message saying "waiting for board to become ready" (possibly followed by a message saying "failed waiting for board to become not ready". Instead, it should be "waiting for board to reset" and "failed waiting for board to reset." Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] hpsa: increase time to wait for board resetStephen M. Cameron2011-05-17
| | | | | | | | | | | | Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] hpsa: factor out irq request codeStephen M. Cameron2011-05-17
| | | | | | | | | | | | Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] hpsa: factor out cmd pool allocation functionsStephen M. Cameron2011-05-17
| | | | | | | | | | | | Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] hpsa: wait longer for no-op to complete after resetting controllerStephen M. Cameron2011-05-17
| | | | | | | | | | | | | | | | | | This is to avoid the usual two or three messages about the command timing out. We're obviously not waiting long enough. Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] hpsa: do a better job of detecting controller reset failureStephen M. Cameron2011-05-17
| | | | | | | | | | | | | | | | | | | | | | | | | | Detect failure of controller reset by noticing if the 32 bytes of "driver version" we store on the hardware in the config table fail to get zeroed out. Previously we noticed if the controller did not transition to "simple mode", but this did not detect reset failure if the controller was already in simple mode prior to the reset attempt (e.g. due to module parameter hpsa_simple_mode=1). Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] hpsa: delete old unused padding garbageStephen M. Cameron2011-05-17
| | | | | | | | | | | | Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] hpsa: remove unused parameter from hpsa_complete_scsi_command()Stephen M. Cameron2011-05-17
| | | | | | | | | | | | Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] hpsa: add readl after writel in interrupt mask setting codeStephen M. Cameron2011-05-17
| | | | | | | | | | | | | | | | | | This is to ensure the board interrupts are really off when these functions return. Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] hpsa: do readl after writel in main i/o path to ensure commands don't ↵Stephen M. Cameron2011-05-17
| | | | | | | | | | | | | | | | | | | | | | get lost. Apparently we've been doin it rong for a decade, but only lately do we run into problems. Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] mptsas: Fix annoying warningBorislav Petkov2011-05-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Shut up drivers/message/fusion/mptsas.c: In function 'mptsas_event_process': drivers/message/fusion/mptsas.c:5015: warning: unused variable 'log_info' for configs with CONFIG_SCSI_MPT2SAS_LOGGING unset. Signed-off-by: Borislav Petkov <borislav.petkov@amd.com> Acked-by: "Desai, Kashyap" <Kashyap.Desai@lsi.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] tcm_fc: Adding FC_FC4 provider (tcm_fc) for FCoE target (TCM - target ↵Kiran Patil2011-05-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | core) support This is a comprehensive patch for FC-FC4 provider. tcm_fc is a FC-FC4 provider which glues target core (TCM) with Fiber channel library (libfc). tcm_fc uses existing FC4 provider hooks from Fiber channel library. This Fiber channel library is used by FCoE (transport - FC over Ethernet) protocol driver as well. Combination of modules such as Fiber channel library, tcm_fc, TCM target core, and FCoE protocol driver enables functional FCoE target. This patch includes initial commit for tcm_fc plus additional enhancement, bug fixes. This tcm_fc module essentially contains 3 entry points such as "prli", "prlo", "recv". When process login request (ELS_PRLI) request is received, Fiber channel library (libfc) module calls passive providers (FC-FC4, tcm_fc) (if any registered) "prli" function. Likewise when LOGO request is received, "prlo" function of passive provider is invoked by libfc. For all other request (e.g. any read/write, task management, LUN inquiry commands), "recv" function of passiver provider is invoked by libfc. Those passive providers "prli, prlo, recv" functions interact with TCM target core for requested operation. This module was primarily developed by "Joe Eykholt" and there were significant contributions from the people listed under signed-off. Signed-off-by: Joe Eykholt <jeykholt@cisco.com> Signed-off-by: Nicholas A. Bellinger <nab@linux-iscsi.org> Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Yi Zou <yi.zou@intel.com> Signed-off-by: Kiran Patil <kiran.patil@intel.com> Acked-by: Robert Love <robert.w.love@intel.com> Signed-off-by: James Bottomley <jbottomley@parallels.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] be2iscsi: update versionJayamohan Kallickal2011-05-01
| | | | | | | | | | | | | | | | Bump version. Signed-off-by: Jayamohan Kallickal <jayamohan.kallickal@emulex.com> Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] be2iscsi: fix chip cleanupJayamohan Kallickal2011-05-01
| | | | | | | | | | | | | | | | | | This patch fixes a bug where proper queue id's were not passed to chip for cleanup. Signed-off-by: Jayamohan Kallickal <jayamohan.kallickal@emulex.com> Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] be2iscsi: fix boot hang due to interrupts not getting rearmedJayamohan Kallickal2011-05-01
| | | | | | | | | | | | | | | | | | | | | | This patch fixes a bug where the interrupts were not rearmed if the Interrupt Mask was enabled. This patch checks for Interrupt mask enabled and still rearms interrupt generation even if the Interrupt mask was enabled Signed-off-by: Jayamohan Kallickal <jayamohan.kallickal@emulex.com> Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] arcmsr: simplify assumptions in dma_alloc_coherent()Tomas Henzl2011-05-01
| | | | | | | | | | | | | | | | | | | | | | | | The code currently computes an offset into a dma_alloc_coherent() area on the assumption that the alignment is imprecise. In fact, the API guarantees PAGE_SIZE alignment, so the offset calculation is always zero: remove it. [jejb: make description actually descriptive] Signed-off-by: Tomas henzl <thenzl@redhat.com> Acked-by: Nick Cheng<nick.cheng@areca.com.tw> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] arcmsr: simplify some double loops in sleeping functionsTomas Henzl2011-05-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I removed outer loops in ...wait_msgint_ready the sleeptime and retrycount are in fact never changed so I changed them into defines. In arcmsr_flush_hba_cache is a loop removed, which printed the same printk 100 times, one line in log is enough I think. The arcmsr_sleep_for_bus_reset has lost a functionality with the latest patches, The only thing the function does is a long sleep, so it's replaced with a ssleep. [jejb: checkpatch fixes] Signed-off-by: Tomas henzl <thenzl@redhat.com> Acked-by: Nick Cheng <nick.cheng@areca.com.tw> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] bnx2fc: setup em for npiv portVasu Dev2011-05-01
| | | | | | | | | | | | | | | | | | | | Use fc_exch_mgr_list_clone to setup em for npiv port. Also remove redundant vport and lport initializations. Signed-off-by: Vasu Dev <vasu.dev@intel.com> Acked-by: Bhanu Prakash Gollapudi <bprakash@broadcom.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] iterate over devices individually for /proc/scsi/scsiJeff Mahoney2011-05-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On systems with very large numbers (> 1600 or so) of SCSI devices, cat /proc/scsi/scsi ends up failing with -ENOMEM. This is due to the show routine simply iterating over all of the devices with bus_for_each_dev(), and trying to dump all of them into the buffer at the same time. On my test system (using scsi_debug with 4064 devices), the output ends up being ~ 632k, far more than kmalloc will typically allow. This patch defines its own seq_file opreations to iterate over the scsi devices.The result is that each show() operation only dumps ~ 180 bytes into the buffer at a time so we don't run out of memory. If the "Attached devices" header isn't required, we can dump the sfile->private bit completely. Signed-off-by: Jeff Mahoney <jeffm@suse.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] ipr: Driver version 2.5.2Kleber Sacilotto de Souza2011-05-01
| | | | | | | | | | | | | | Bump the driver version. Signed-off-by: Kleber Sacilotto de Souza <klebers@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] ibmvscsi: Improve CRQ reset reliabilityBrian King2011-05-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes an issue seen where an event occurs which causes the ibmvscsi driver to reset its CRQ. Upon re-registering its CRQ, it receives H_CLOSED, indicating the Virtual I/O Server is not yet ready to receive commands. This resulted in the ibmvscsi driver essentially offlining the adapter and not recovering. The fix is to re-enable our interrupt so that when the Virtual I/O server is ready and sends a CRQ init, we will be able to receive it and resume initialization of the VSCSI adapter. Signed-off-by: Brian King <brking@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
| * [SCSI] ipr: increase the dump size for 64 bit adaptersKleber Sacilotto de Souza2011-05-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently the size of the dump generated by the driver is limited in 4MB, which is insufficient to gather much useful data from the new 64 bit adapters. This patch makes the needed changes to increase the dump limit for the 64 bit adapters to 32MB, or even to a bigger value in the future, but keeping the current limitations for the legacy 32 bit adapters. Signed-off-by: Kleber Sacilotto de Souza <klebers@linux.vnet.ibm.com> Acked-by: Brian King <brking@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>