linux/drivers
Vasu Dev e0d93c5bc4 [SCSI] libfc: IO errors on link down due to cable unplug
In this case, sync IO fails with EIO(5) errors as:-

"Thread:1 System call error:5 - Input/output error (::pwrite() failed)".

This is due to IO time out while libfc doing link down processing
to block all rports and if timed out IO was at last retry
attempt then it fails to user with EIO error followed by
these log messages.

[77848.612169] host2: rport bf0015: Delete port
[77848.612221] host2: rport e10aef: work delete
[77848.612232] host2: rport e10002: work event 3
[77848.612422] sd 2:0:1:1: [sdi] Unhandled error code
[77848.612426] sd 2:0:1:1: [sdi] Result: hostbyte=DID_ERROR
driverbyte=DRIVER_OK
[77848.612431] sd 2:0:1:1: [sdi] CDB: Write(10): 2a 00 00 00 11 20 00 00 20 00
[77848.612445] end_request: I/O error, dev sdi, sector 4384
[77848.612553] sd 2:0:1:2: [sdj] Unhandled error code

To fix these EIO errors, such timed out incomplete IOs needs
to be re-queued without counting retry attempt and this patch
does that using DID_REQUEUE scsi code.

Signed-off-by: Vasu Dev <vasu.dev@intel.com>
Signed-off-by: Robert Love <robert.w.love@intel.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
2010-07-28 09:05:45 -05:00
..
accessibility
acpi Merge branch 'acpi-idle' into release 2010-06-04 15:23:02 -04:00
amba
ata sata_sil24: Use memory barriers before issuing commands 2010-06-10 16:06:48 -04:00
atm
auxdisplay
base
block Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block 2010-06-04 15:37:44 -07:00
bluetooth
cdrom
char Revert "tty: fix a little bug in scrup, vt.c" 2010-06-06 20:44:04 -07:00
clocksource clocksource: sh_cmt: compute mult and shift before registration 2010-06-02 17:10:44 +09:00
connector
cpufreq
cpuidle
crypto crypto: crypto4xx - Fix build breakage 2010-06-03 16:57:24 +10:00
dca
dio
dma of/dma: fix build breakage in ppc4xx adma driver 2010-06-02 21:02:39 -06:00
edac Merge branch 'linux_next' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/i7core 2010-06-04 15:39:54 -07:00
eisa
firewire firewire: core: check for 1394a compliant IRM, fix inaccessibility of Sony camcorder 2010-06-02 19:48:13 +02:00
firmware
gpio
gpu Revert "drm/i915: Don't enable pipe/plane/VCO early (wait for DPMS on)." 2010-06-08 20:16:28 -07:00
hid
hwmon i2c: Remove all i2c_set_clientdata(client, NULL) in drivers 2010-06-03 11:33:58 +02:00
i2c i2c: Remove all i2c_set_clientdata(client, NULL) in drivers 2010-06-03 11:33:58 +02:00
ide powerpc/macio: Fix probing of macio devices by using the right of match table 2010-06-02 17:50:38 +10:00
idle
ieee1394
ieee802154
infiniband fix the deadlock in qib_fs 2010-06-04 17:16:27 -04:00
input hp_sdc_rtc: fix broken ioctl conversion 2010-06-08 22:23:21 +02:00
isdn isdn/kcapi: return -EFAULT on copy_from_user errors 2010-06-03 03:28:22 -07:00
leds i2c: Remove all i2c_set_clientdata(client, NULL) in drivers 2010-06-03 11:33:58 +02:00
lguest
macintosh Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc 2010-06-03 15:46:37 -07:00
mca
md
media Merge branch 'v4l_for_2.6.35' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6 2010-06-04 15:38:12 -07:00
memstick
message [SCSI] mptfusion: print Doorbell register in a case of hard reset and timeout 2010-07-27 12:03:52 -05:00
mfd i2c: Remove all i2c_set_clientdata(client, NULL) in drivers 2010-06-03 11:33:58 +02:00
misc [SCSI] enclosure: fix error path - actually return ERR_PTR() on error 2010-07-27 12:03:48 -05:00
mmc mmc: msm: fix compile error on MSM7x30 2010-06-09 08:51:31 -07:00
mtd Merge git://git.infradead.org/~dwmw2/mtd-2.6.35 2010-06-07 17:10:06 -07:00
net Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 2010-06-11 14:20:03 -07:00
nubus
of
oprofile
parisc
parport
pci Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 2010-06-11 14:15:44 -07:00
pcmcia pcmcia: avoid validate_cis failure on CIS override 2010-06-07 18:34:16 +02:00
platform intel_scu_ipc: Length fix 2010-06-01 08:40:47 -07:00
pnp
power i2c: Remove all i2c_set_clientdata(client, NULL) in drivers 2010-06-03 11:33:58 +02:00
pps
ps3
rapidio
regulator i2c: Remove all i2c_set_clientdata(client, NULL) in drivers 2010-06-03 11:33:58 +02:00
rtc rtc: s3c: initialize s3c_rtc_cpu_type before using it 2010-06-04 15:21:44 -07:00
s390 [SCSI] zfcp: Update status read mempool 2010-07-21 15:05:09 -07:00
sbus
scsi [SCSI] libfc: IO errors on link down due to cable unplug 2010-07-28 09:05:45 -05:00
serial serial: add support for various Titan PCI cards 2010-06-04 13:37:18 -07:00
sfi SFI: do not return freed pointer 2010-06-01 12:04:35 -04:00
sh sh: Make intc messages consistent via pr_fmt. 2010-06-02 18:10:00 +09:00
sn
spi of/spi: mpc512x_psc_spi.c: Fix build failures 2010-06-02 13:45:06 -06:00
ssb
staging Merge branch 'v4l_for_2.6.35' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6 2010-06-04 15:38:12 -07:00
tc
telephony
thermal
uio
usb Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6 2010-06-04 15:42:09 -07:00
uwb
vhost misc: Fix allocation 'borrowed' by vhost_net 2010-06-09 08:50:31 -07:00
video Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6 2010-06-04 15:42:09 -07:00
virtio
vlynq
w1
watchdog [PATCH 2/11] drivers/watchdog: Eliminate a NULL pointer dereference 2010-06-07 15:55:03 +00:00
xen xen: avoid allocation causing potential swap activity on the resume path 2010-06-03 09:34:45 +01:00
zorro
Kconfig
Makefile