linux/drivers
Lalit Chandivade 86fbee86e9 [SCSI] qla2xxx: ensure flash operation and host reset via sg_reset are mutually exclusive
The problem occurring is a hw-race where there's an outstanding read-flash
operation occurring while the chip is being reset (done via an sg_reset script).
After the chip is paused, the read-flash operation never completes and the
DPC thread, while trying to complete the reset, is never able to recover,
as the HW appears to be hung...

The fix is to wait for outstanding flash operation prior to doing a sg_reset -h.
And to wait for reset to complete before any flash operations.

Note, during the wait, if any of the operation (reset/flash) does not complete,
failure is returned to the upper layer. The upper layer either need to
fail or retry.

Signed-off-by: Giridhar Malavali <giridhar.malavali@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
2010-05-16 18:22:07 -04:00
..
accessibility
acpi Merge branches 'battery', 'bugzilla-14667', 'bugzilla-15096', 'bugzilla-15480', 'bugzilla-15521', 'bugzilla-15605', 'gpe-reference-counters', 'misc', 'pxm-fix' and 'video-random-key' into release 2010-04-06 17:06:22 -04:00
amba
ata libata: unlock HPA if device shrunk 2010-04-06 10:55:33 -04:00
atm
auxdisplay
base nodemask: include slab.h from drivers/base/node.c 2010-04-07 06:41:41 +09:00
block cciss: unlock on error path 2010-04-07 08:38:03 -07:00
bluetooth
cdrom
char hvc_console: Fix race between hvc_close and hvc_remove 2010-04-08 09:46:20 +09:30
clocksource
connector
cpufreq
cpuidle
crypto
dca
dio
dma
edac
eisa
firewire
firmware Merge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-tip 2010-04-07 11:02:23 -07:00
gpio drivers/gpio/timbgpio.c: add missing unlock 2010-04-07 08:38:02 -07:00
gpu Merge branch 'master' into export-slabh 2010-04-05 11:37:28 +09:00
hid Merge branch 'master' into export-slabh 2010-04-05 11:37:28 +09:00
hwmon
i2c
ide Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-2.6 2010-04-08 07:45:36 -07:00
idle
ieee1394
ieee802154
infiniband
input
isdn
leds
lguest
macintosh device_attributes: add sysfs_attr_init() for dynamic attributes 2010-04-07 08:38:03 -07:00
mca
md
media device_attributes: add sysfs_attr_init() for dynamic attributes 2010-04-07 08:38:03 -07:00
memstick
message [SCSI] mptfusion: Bump version 03.04.15 2010-04-11 09:24:14 -05:00
mfd
misc Merge branch 'master' into export-slabh 2010-04-05 11:37:28 +09:00
mmc omap hsmmc: fix a bug in card remove scenario 2010-04-07 08:38:03 -07:00
mtd
net Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 2010-04-06 08:34:06 -07:00
nubus
of Merge branch 'master' into export-slabh 2010-04-05 11:37:28 +09:00
oprofile
parisc
parport
pci Merge branch 'master' into export-slabh 2010-04-05 11:37:28 +09:00
pcmcia Merge branch 'urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6 2010-04-06 13:03:52 -07:00
platform device_attributes: add sysfs_attr_init() for dynamic attributes 2010-04-07 08:38:03 -07:00
pnp Merge branches 'battery', 'bugzilla-14667', 'bugzilla-15096', 'bugzilla-15480', 'bugzilla-15521', 'bugzilla-15605', 'gpe-reference-counters', 'misc', 'pxm-fix' and 'video-random-key' into release 2010-04-06 17:06:22 -04:00
power
pps
ps3
rapidio
regulator
rtc rtc-mxc: multiple fixes in rtc-mxc probe method 2010-04-07 08:38:05 -07:00
s390 [SCSI] zfcp: Zero memory for gpn_ft and adisc requests 2010-05-02 15:42:34 -04:00
sbus
scsi [SCSI] qla2xxx: ensure flash operation and host reset via sg_reset are mutually exclusive 2010-05-16 18:22:07 -04:00
serial Merge branch 'master' into export-slabh 2010-04-05 11:37:28 +09:00
sfi
sh
sn
spi
ssb
staging staging/otus: include slab.h from usbdrv.h 2010-04-05 11:23:16 +09:00
tc
telephony
thermal drivers/thermal/thermal_sys.c: fix 'key f70f4b50 not in .data' in thermal_sys 2010-04-07 08:38:03 -07:00
uio
usb Merge branch 'master' into export-slabh 2010-04-05 11:37:28 +09:00
uwb
vhost
video mb862xxfb: update Valentin's email address 2010-04-07 08:38:04 -07:00
virtio
vlynq
w1
watchdog Merge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog 2010-04-06 09:56:40 -07:00
xen
zorro
Kconfig
Makefile