- 11 4月, 2010 4 次提交
-
-
由 Kashyap, Desai 提交于
Add the cancel_pending_work flag from the fw_event_work structure, and then to set the flag during host reset, check the flag later from work threads context and if cancel_pending_work_flag is set ingore those events. Now Rescan after host reset is changed. Added special task MPT2SAS_RESCAN_AFTER_HOST_RESET. This task will be queued at the time of HBA reset. this task is treated as barrier. All work after MPT2SAS_RESCAN_AFTER_HOST_RESET will be treated as new work and will be server by callback handle. If host_recovery is going on while running RESCAN task, it will wait for shos_recovery_done completion which will be called from HBA reset DONE context. Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com> Reviewed-by: NEric Moore <eric.moore@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Hannes Reinecke 提交于
The rport structure defines dev_loss_tmo as u32, which is later multiplied with HZ to get the actual timeout value. This might overflow for large dev_loss_tmo values. So we should be better using u64 as intermediate variables here to protect against overflow. Signed-off-by: NHannes Reinecke <hare@suse.de> Acked-by: NJames Smart <james.smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 FUJITA Tomonori 提交于
scsi_dma_map() returns -1 if an error occurred (zero means that the command has no data). So the following current code can't catch an error: sges_left = scsi_dma_map(scmd); if (!sges_left) { sdev_printk(KERN_ERR, scmd->device, "pci_map_sg" " failed: request for %d bytes!\n", scsi_bufflen(scmd)); return -ENOMEM; } Signed-off-by: NFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Acked-by: N"Desai, Kashyap" <Kashyap.Desai@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 adam radford 提交于
This small patch forces 60 second timeouts for the older 3w-xxxx & 3w-9xxx drivers for systems that don't contain the udev rule for setting scsi timeouts to 60 seconds. Signed-off-by: NAdam Radford <aradford@gmail.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
- 09 4月, 2010 4 次提交
-
-
由 Jiri Slaby 提交于
Stanse found that one error path in qla24xx_bsg_timeout omits to unlock ha->hardware_lock. Fix that. Signed-off-by: NJiri Slaby <jslaby@suse.cz> Acked-by: NGiridhar Malavali <giridhar.malavali@qlogic.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Jiri Slaby 提交于
Stanse found that two error paths in lpfc_bsg_rport_els_cmp and lpfc_issue_ct_rsp_cmp omits to unlock phba->ct_ev_lock. It is because they wrongly unlock phba->hbalock instead. Fix that. Signed-off-by: NJiri Slaby <jslaby@suse.cz> Acked-by: NJames Smart <james.smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Jiri Slaby 提交于
Stanse found that one error path in mgmt_invalidate_icds omits to unlock ctrl->mbox_lock. Fix that. Added in 756d29c8 (Enable async mode for mcc rings) where the spinlock was moved. Signed-off-by: NJiri Slaby <jslaby@suse.cz> Acked-by: NJayamohan Kallickal <jayamohank@serverengines.com> Reviewed-by: NMike Christie <michaelc@cs.wisc.edu> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Dan Carpenter 提交于
adpt_i2o_delete_hba() calls kfree() so we have to save "pHba->next" before calling it. Also inside adpt_i2o_delete_hba() itself, there was another use after free bug which I fixed by moving the kfree() down a line. Signed-off-by: NDan Carpenter <error27@gmail.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
- 30 3月, 2010 1 次提交
-
-
由 Tejun Heo 提交于
include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h percpu.h is included by sched.h and module.h and thus ends up being included when building most .c files. percpu.h includes slab.h which in turn includes gfp.h making everything defined by the two files universally available and complicating inclusion dependencies. percpu.h -> slab.h dependency is about to be removed. Prepare for this change by updating users of gfp and slab facilities include those headers directly instead of assuming availability. As this conversion needs to touch large number of source files, the following script is used as the basis of conversion. http://userweb.kernel.org/~tj/misc/slabh-sweep.py The script does the followings. * Scan files for gfp and slab usages and update includes such that only the necessary includes are there. ie. if only gfp is used, gfp.h, if slab is used, slab.h. * When the script inserts a new include, it looks at the include blocks and try to put the new include such that its order conforms to its surrounding. It's put in the include block which contains core kernel includes, in the same order that the rest are ordered - alphabetical, Christmas tree, rev-Xmas-tree or at the end if there doesn't seem to be any matching order. * If the script can't find a place to put a new include (mostly because the file doesn't have fitting include block), it prints out an error message indicating which .h file needs to be added to the file. The conversion was done in the following steps. 1. The initial automatic conversion of all .c files updated slightly over 4000 files, deleting around 700 includes and adding ~480 gfp.h and ~3000 slab.h inclusions. The script emitted errors for ~400 files. 2. Each error was manually checked. Some didn't need the inclusion, some needed manual addition while adding it to implementation .h or embedding .c file was more appropriate for others. This step added inclusions to around 150 files. 3. The script was run again and the output was compared to the edits from #2 to make sure no file was left behind. 4. Several build tests were done and a couple of problems were fixed. e.g. lib/decompress_*.c used malloc/free() wrappers around slab APIs requiring slab.h to be added manually. 5. The script was run on all .h files but without automatically editing them as sprinkling gfp.h and slab.h inclusions around .h files could easily lead to inclusion dependency hell. Most gfp.h inclusion directives were ignored as stuff from gfp.h was usually wildly available and often used in preprocessor macros. Each slab.h inclusion directive was examined and added manually as necessary. 6. percpu.h was updated not to include slab.h. 7. Build test were done on the following configurations and failures were fixed. CONFIG_GCOV_KERNEL was turned off for all tests (as my distributed build env didn't work with gcov compiles) and a few more options had to be turned off depending on archs to make things build (like ipr on powerpc/64 which failed due to missing writeq). * x86 and x86_64 UP and SMP allmodconfig and a custom test config. * powerpc and powerpc64 SMP allmodconfig * sparc and sparc64 SMP allmodconfig * ia64 SMP allmodconfig * s390 SMP allmodconfig * alpha SMP allmodconfig * um on x86_64 SMP allmodconfig 8. percpu.h modifications were reverted so that it could be applied as a separate patch and serve as bisection point. Given the fact that I had only a couple of failures from tests on step 6, I'm fairly confident about the coverage of this conversion patch. If there is a breakage, it's likely to be something in one of the arch headers which should be easily discoverable easily on most builds of the specific arch. Signed-off-by: NTejun Heo <tj@kernel.org> Guess-its-ok-by: NChristoph Lameter <cl@linux-foundation.org> Cc: Ingo Molnar <mingo@redhat.com> Cc: Lee Schermerhorn <Lee.Schermerhorn@hp.com>
-
- 28 3月, 2010 10 次提交
-
-
由 Michael Reed 提交于
The qla1280 driver acquires its firmware via udev. During boot the firmware is located in the initrd. If, after root is mounted, the adapter needs to reload firmware (host reset), the firmware load may fail if the root device is on the adapter being reset. This patch modifies qla1280 to retain the firmware loaded via the initial request_firmware() for use during error recovery. [jejb: fix up checkpatch issues] Signed-off-by: NMichael Reed <mdr@sgi.com> Acked-by: NJes Sorensen <Jes.Sorensen@redhat.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
On newer kernels users of advansys module are reporting system hang when trying to load it without firmware files present. After looking closely at description on https://qa.mandriva.com/show_bug.cgi?id=53220, I think this is related to commit "[SCSI] advansys: use request_firmware". The problem is that after switch to request_firmware, asc_dvc->err_code isn't being set when firmware files aren't found or loading fails. err_code is used by the driver to judge if there was a fatal error or not, as can be seen for example on advansys_board_found, which will only return -ENODEV when err_code is set. Because err_code isn't being set when request_firmware fails, this is a change of behaviour of the code before request_firmware addition, making it continue to load and it fails later as the firmware wasn't really loaded. Signed-off-by: NHerton Ronaldo Krzesinski <herton@mandriva.com.br> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Giridhar Malavali 提交于
Signed-off-by: NGiridhar Malavali <giridhar.malavali@qlogic.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Santosh Vernekar 提交于
The fix prevents application path from sending get-firmware-state mbx command during as isp reset. Signed-off-by: NGiridhar Malavali <giridhar.malavali@qlogic.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Ben Hutchings 提交于
On specific platforms, MSI is unreliable on some of the QLA24xx chips, resulting in fatal I/O errors under load, as reported in <http://bugs.debian.org/572322> and by some RHEL customers. Signed-off-by: NGiridhar Malavali <giridhar.malavali@qlogic.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Michael Hernandez 提交于
[SCSI] qla2xxx: Check to make sure multique and CPU affinity support is not enabled at the same time. The logic is changed to detect this condition based on following 1) both module parameters are off (ql2xmaxqueues and ql2xmultique_tag). 2) both module parameters are on (ql2xmaxqueues and ql2xmultique_tag). 3) The HBA does not support multi queue. Signed-off-by: NGiridhar Malavali <giridhar.malavali@qlogic.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Andrew Vasquez 提交于
Checks should only be done for NPIV-capable ISPs. Original code could result in PORT_UPDATEs being missed on non-NPIV-capable ISPs. Signed-off-by: NAndrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: NGiridhar Malavali <giridhar.malavali@qlogic.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Santosh Vernekar 提交于
We now enable/disable "Additional Receive Credits" in f/w based on nvram parameter "Extended_BB_Credits" bit (i.e. Enhanced-Features: at offset 0x196). This is applicable only for GEN2 CNAs. Signed-off-by: NSantosh Vernekar <santosh.vernekar@qlogic.com> Signed-off-by: NGiridhar Malavali <giridhar.malavali@qlogic.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Sarang Radke 提交于
blk_end_request doesn't complete a bidi request successfully The unfinished request eventually triggers a panic in timeout handling routine fc_bsg_job_timeout as req->special is NULL Use blk_end_request_all to end the request unconditionally Signed-off-by: NLalit Chandivade <lalit.chandivade@qlogic.com> Acked-by: NJames Smart <james.smart@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Mike Christie 提交于
We could be failing/stopping a connection due to libiscsi starting recovery/cleanup, but the xmit path or scsi eh thread path could be dropping the connection at the same time. As a result the session->state gets set to failed instead of in recovery. We end up not blocking the session and so the replacement timeout never gets started and we only end up failing the IO when scsi_softirq_done sees that the cmd has been running for (cmd->allowed + 1) * rq->timeout secs. We used to fail the IO right away so users are seeing a long delay when using dm-multipath. This problem was added in 2.6.28. Signed-off-by: NMike Christie <michaelc@cs.wisc.edu> Cc: stable@kernel.org Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
- 15 3月, 2010 1 次提交
-
-
由 Dan Carpenter 提交于
There was a problem introduced in Jul 2008 by: 0e6f9d27 pcmcia: use pcmcia_loop_config in scsi pcmcia drivers Signed-off-by: NDan Carpenter <error27@gmail.com> Signed-off-by: NDominik Brodowski <linux@dominikbrodowski.net>
-
- 13 3月, 2010 1 次提交
-
-
由 Julia Lawall 提交于
The few lines below the kfree of hdr_buf may go to the label err_free which will also free hdr_buf. The most straightforward solution seems to be to just move the kfree of hdr_buf after these gotos. A simplified version of the semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // <smpl> @r@ identifier E; expression E1; iterator I; statement S; @@ *kfree(E); ... when != E = E1 when != I(E,...) S when != &E *kfree(E); // </smpl> Signed-off-by: NJulia Lawall <julia@diku.dk> Cc: James Bottomley <James.Bottomley@HansenPartnership.com> Cc: <stable@kernel.org> Signed-off-by: NAndrew Morton <akpm@linux-foundation.org> Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
-
- 09 3月, 2010 2 次提交
-
-
由 Meelis Roos 提交于
qlogicpti driver registers its irq with a name containing slash. This results in [ 71.049735] WARNING: at fs/proc/generic.c:316 __xlate_proc_name+0xa8/0xb8() [ 71.132815] name 'Qlogic/PTI' because proc_mkdir with the name of the irq fails. Fix it by just removing the slash from irq name. Discovered and tested on real hardware (Sun Ultra 1). Signed-off-by: NMeelis Roos <mroos@linux.ee> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
由 Gal Rosen 提交于
The issue occur while deleting 60 virtual ports through the sys interface /sys/class/fc_vports/vport-X/vport_delete. It happen while in a mistake each request sent twice for the same vport. This interface is asynchronous, entering the delete request into a work queue, allowing more than one request to enter to the delete work queue. The result is a NULL pointer. The first request already delete the vport, while the second request got a pointer to the vport before the device destroyed. Re-create vport later cause system freeze. Solution: Check vport flags before entering the request to the work queue. [jejb: fixed int<->long problem on spinlock flags variable] Signed-off-by: NGal Rosen <galr@storwize.com> Acked-by: NJames Smart <james.smart@emulex.com> Cc: Stable Tree <stable@kernel.org> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
- 08 3月, 2010 1 次提交
-
-
由 Uwe Kleine-König 提交于
A pointer to a probe callback is passed to the core via platform_driver_register and so the function must not disappear when the .init sections are discarded. Otherwise (if also having HOTPLUG=y) unbinding and binding a device to the driver via sysfs will result in an oops as does a device being registered late. An alternative to this patch is using platform_driver_probe instead of platform_driver_register plus removing the pointer to the probe function from the struct platform_driver. Signed-off-by: NUwe Kleine-König <u.kleine-koenig@pengutronix.de> Cc: Andrew Morton <akpm@linux-foundation.org> Cc: David Brownell <dbrownell@users.sourceforge.net> Cc: Dmitri Vorobiev <dmitri.vorobiev@movial.fi> Cc: Henrik Kretzschmar <henne@nachtwindheim.de> Cc: James Bottomley <James.Bottomley@HansenPartnership.com> Cc: Kay Sievers <kay.sievers@vrfy.org> Cc: peter fuerst <post@pfrst.de> Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de> Acked-by: NRalf Baechle <ralf@linux-mips.org> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
- 07 3月, 2010 16 次提交
-
-
由 Krishna Gudipati 提交于
Upgrade the upstream driver from 2.0.0.0 to 2.1.2.1. Signed-off-by: NKrishna Gudipati <kgudipat@brocade.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Krishna Gudipati 提交于
Signed-off-by: NKrishna Gudipati <kgudipat@brocade.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Krishna Gudipati 提交于
When IO is completed with underrun and with good SCSI status, check if the transferred bytes against scsi_cmnd->underflow, which is set to minimum number of bytes that must be transferred for this command, if is less than required minimum, complete the IO with DID_ERROR. Signed-off-by: NKrishna Gudipati <kgudipat@brocade.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Krishna Gudipati 提交于
MS module did not invoke fdmi offline in all cases, call fdmi offline when ms module receives a port offline, so that fdmi offline is from one place in the ms module. Make changes to handle 10G speed in the conversion routine. Replaced the usage of bfa_adapter_attr_s struct with specific API's. Signed-off-by: NKrishna Gudipati <kgudipat@brocade.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Krishna Gudipati 提交于
Modified the portstats get/clear logic for port physical/FCoE/QoS stats. Added more stats to FC Fixed some issues with FCoE stats collection. Signed-off-by: NKrishna Gudipati <kgudipat@brocade.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Krishna Gudipati 提交于
bfa_ioc_attr_s is a big structure and some times could cause stack overflow if defined locally, so add specific APIs that are needed to replace the use of ioc_attr local var. Signed-off-by: NKrishna Gudipati <kgudipat@brocade.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Krishna Gudipati 提交于
Signed-off-by: NKrishna Gudipati <kgudipat@brocade.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Krishna Gudipati 提交于
Rename pport structures to fcport in BFA FCS, to resolve confusion about the port structures in the firmware, and make sure the SG page is setup correctly. Signed-off-by: NKrishna Gudipati <kgudipat@brocade.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Krishna Gudipati 提交于
Currently BFA was not checking for IOC down condition when issuing getstats/clearstats Add check to see if IOC is operational, before issuing getstats/clearstats. Signed-off-by: NKrishna Gudipati <kgudipat@brocade.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Krishna Gudipati 提交于
Use dummy interrupt handlers till chip initialization is complete. Install real interrupt handlers after chip initialization. Also removed msix installation code in bfa_iocfc_init(). Signed-off-by: NKrishna Gudipati <kgudipat@brocade.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Krishna Gudipati 提交于
Fixed the issue of not acknowledging the command queue full-to-non-full interrupt. Implemented separate acknowledging functions for different ASIC and interrupt mode. Fixed the case of missing CPE interrupt by always processing the pending requests in the completion path. Signed-off-by: NKrishna Gudipati <kgudipat@brocade.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Krishna Gudipati 提交于
ioc_recover failed to work in fcmode. Fixed the code to initialize the ioc_regs.err_set during the notify_hbfail. Signed-off-by: NKrishna Gudipati <kgudipat@brocade.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Krishna Gudipati 提交于
Replace enum types with int and rearrange the fields to fix some alignment issue. Local var ioc_attr is causing the stack to overflow, so removed the usage of the local ioc_attr var and now invoking an API to return the ioc_type. Fix some AEN issues. Signed-off-by: NKrishna Gudipati <kgudipat@brocade.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Krishna Gudipati 提交于
Introduce a link notification state machine to handle next incoming link events while the current event is being delivered to the driver. When the event has been processed by the driver, the link notification state machine will queue the next event (if there is any) to the driver. Signed-off-by: NKrishna Gudipati <kgudipat@brocade.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Krishna Gudipati 提交于
Signed-off-by: NKrishna Gudipati <kgudipat@brocade.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-
由 Krishna Gudipati 提交于
Made FCS authentication related changes to state machines and header files. Made changes in FCS state machines to handle the case when secret string is NULL. Signed-off-by: NKrishna Gudipati <kgudipat@brocade.com> Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
-