android_kernel_google_msm/drivers/scsi
Mike Christie 5c656af7e4 [SCSI] qla4xxx: add timeout handler
Recently dm-multipath began calling blk_abort_queue. This causes all the
commands/request running on the path to have the timeout function called.
If a path does go down, and the LLD returns DID_*, dm-multpiath will eventually
get this error and begin to call the cmd timeout handler. qla4xxx currently
does not set a timed out handler and so the default one could return
BLK_EH_NOT_HANDLED and end up firing the scsi eh and stopping IO to all
paths on the host when only one path is affected.

For software and offload iscsi we have a timed out handler already.
This patch adds a driver specific one to qla4xxx because there
are some ddb->state and session->state and command completion races
that are better handled in the LLD.

This also handles the problem where if the session is down,
we do not need the scsi eh to run until the transport code
has tried to reconnect us.

Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
2009-07-30 08:50:00 -05:00
..
aacraid Replace all DMA_nBIT_MASK macro with DMA_BIT_MASK(n) 2009-04-13 15:04:33 -07:00
aic7xxx [SCSI] aic79xx: make driver respect nvram for IU and QAS settings 2009-06-15 10:09:35 -05:00
aic7xxx_old
aic94xx dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) 2009-04-07 08:31:11 -07:00
arcmsr dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) 2009-04-07 08:31:11 -07:00
arm Merge branch 'master' into devel 2009-03-28 20:30:18 +00:00
bnx2i cnic: add NETDEV_1000 and NETDEVICES to Kconfig select 2009-06-21 11:02:59 -05:00
cxgb3i Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes 2009-07-04 09:46:01 -07:00
device_handler [SCSI] scsi_dh_rdac: Retry for NOT_READY(02/04/01) in rdac device handler 2009-05-20 17:21:14 -05:00
dpt trivial: fix typo milisecond/millisecond for documentation and source comments. 2009-06-12 18:01:46 +02:00
fcoe libfcoe: Add runtime debugging with module param debug_logging 2009-06-21 11:07:06 -05:00
fnic [SCSI] fnic: use DMA_BIT_MASK(nn) instead of deprecated DMA_nnBIT_MASK 2009-06-25 11:08:53 -05:00
ibmvscsi [SCSI] ibmvscsi: Fix module load hang 2009-06-25 11:06:41 -05:00
libfc libfc: Add runtime debugging with debug_logging module parameter 2009-06-21 11:07:08 -05:00
libsas [SCSI] libsas: reuse the original port when hotplugging phys in wide ports 2009-07-16 12:50:44 -05:00
lpfc Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6 2009-06-17 09:50:44 -07:00
megaraid trivial: typo (en|dis|avail|remove)bale -> (en|dis|avail|remove)able 2009-06-12 18:01:45 +02:00
mpt2sas [SCSI] Merge branch 'linus' 2009-06-12 10:02:03 -05:00
mvsas [SCSI] mvsas: remove all the casts from void * or to void * 2009-05-23 15:44:13 -05:00
osd [SCSI] Merge branch 'linus' 2009-06-12 10:02:03 -05:00
pcmcia [SCSI] nsp_cs: time_out reaches -1 2009-06-15 10:09:31 -05:00
qla2xxx headers: smp_lock.h redux 2009-07-12 12:22:34 -07:00
qla4xxx [SCSI] qla4xxx: add timeout handler 2009-07-30 08:50:00 -05:00
sym53c8xx_2 sym53c8xx: ratelimit parity errors 2009-06-21 11:12:17 -05:00
.gitignore
3w-9xxx.c [SCSI] 3w-9xxx: scsi_dma_unmap fix 2009-05-15 12:23:32 -04:00
3w-9xxx.h [SCSI] 3w-9xxx: add power management support 2009-03-13 15:46:42 -05:00
3w-xxxx.c [SCSI] 3w-xxxx: scsi_dma_unmap fix 2009-05-15 12:24:59 -04:00
3w-xxxx.h [SCSI] 3w-xxxx: scsi_dma_unmap fix 2009-05-15 12:24:59 -04:00
53c700.c
53c700.h
53c700.scr
53c700_d.h_shipped
a100u2w.c dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) 2009-04-07 08:31:11 -07:00
a100u2w.h
a2091.c [SCSI] a2091: make 2 functions static 2009-04-03 10:17:31 -05:00
a2091.h [SCSI] a2091: make 2 functions static 2009-04-03 10:17:31 -05:00
a3000.c [SCSI] a3000: make 2 functions static 2009-04-03 10:17:17 -05:00
a3000.h [SCSI] a3000: make 2 functions static 2009-04-03 10:17:17 -05:00
a4000t.c scsi: a4000 - Correct driver unregistration in case of failure 2009-04-22 20:39:06 +02:00
advansys.c [SCSI] advansys: use request_firmware 2009-04-03 09:25:23 -05:00
aha152x.c
aha152x.h
aha1542.c
aha1542.h
aha1740.c scsi: remove driver_data direct access of struct device 2009-06-15 21:30:27 -07:00
aha1740.h
aic7xxx_old.c
atari_NCR5380.c Remove multiple KERN_ prefixes from printk formats 2009-07-08 10:30:03 -07:00
atari_scsi.c m68k: section mismatch fixes: Atari SCSI 2009-03-26 21:15:29 +01:00
atari_scsi.h
atp870u.c dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) 2009-04-07 08:31:11 -07:00
atp870u.h
BusLogic.c dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) 2009-04-07 08:31:11 -07:00
BusLogic.h
bvme6000_scsi.c scsi/m68k: Kill NCR_700_detect() warnings 2009-03-24 16:38:25 -07:00
ch.c [SCSI] ch: Add scsi type modalias 2009-03-13 15:48:43 -05:00
constants.c [SCSI] Remove SUGGEST flags 2009-03-12 12:58:02 -05:00
dc395x.c
dc395x.h
dmx3191d.c
dpt_i2o.c dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) 2009-04-07 08:31:11 -07:00
dpti.h
dtc.c
dtc.h
eata.c block: convert to pos and nr_sectors accessors 2009-05-11 09:50:54 +02:00
eata_generic.h
eata_pio.c
eata_pio.h
esp_scsi.c
esp_scsi.h
fd_mcs.c
fdomain.c
fdomain.h
FlashPoint.c
g_NCR5380.c
g_NCR5380.h
g_NCR5380_mmio.c
gdth.c dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) 2009-04-07 08:31:11 -07:00
gdth.h
gdth_ioctl.h
gdth_proc.c [SCSI] gdth: fix overlapping snprintf users 2009-06-09 10:31:46 -05:00
gdth_proc.h
gvp11.c [SCSI] a2091, gvp11: kill warn_unused_result warnings 2009-01-02 12:16:18 -06:00
gvp11.h
hosts.c fix race that can give duplicate host number 2009-06-21 10:52:42 -05:00
hptiop.c dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) 2009-04-07 08:31:11 -07:00
hptiop.h
ibmmca.c
imm.c
imm.h
in2000.c
in2000.h
initio.c dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) 2009-04-07 08:31:11 -07:00
initio.h
ipr.c ipr: differentiate pci-x and pci-e based adapters 2009-06-21 10:52:47 -05:00
ipr.h ipr: differentiate pci-x and pci-e based adapters 2009-06-21 10:52:47 -05:00
ips.c dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) 2009-04-07 08:31:11 -07:00
ips.h
iscsi_tcp.c iscsi_tcp: propogate EAGAIN from sendpage to libiscsi 2009-06-21 10:52:40 -05:00
iscsi_tcp.h
jazz_esp.c
Kconfig explain the hidden scsi_wait_scan Kconfig variable 2009-06-21 11:10:41 -05:00
lasi700.c dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) 2009-04-07 08:31:11 -07:00
libiscsi.c [SCSI] libiscsi: disable bh in and abort handler. 2009-07-30 08:49:59 -05:00
libiscsi_tcp.c libiscsi: don't run scsi eh if iscsi task is making progress 2009-06-21 10:52:39 -05:00
libsrp.c scsi: remove driver_data direct access of struct device 2009-06-15 21:30:27 -07:00
mac53c94.c Remove multiple KERN_ prefixes from printk formats 2009-07-08 10:30:03 -07:00
mac53c94.h
mac_esp.c
mac_scsi.c
mac_scsi.h
Makefile [SCSI] bnx2i: Add bnx2i iSCSI driver. 2009-06-09 10:22:45 -05:00
megaraid.c dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) 2009-04-07 08:31:11 -07:00
megaraid.h trivial: typo (en|dis|avail|remove)bale -> (en|dis|avail|remove)able 2009-06-12 18:01:45 +02:00
mesh.c
mesh.h
mvme16x_scsi.c scsi/m68k: Kill NCR_700_detect() warnings 2009-03-24 16:38:25 -07:00
mvme147.c
mvme147.h
ncr53c8xx.c [SCSI] ncr53c8xx: div reaches -1 2009-06-15 10:09:30 -05:00
ncr53c8xx.h
NCR53c406a.c
NCR5380.c
NCR5380.h
NCR_D700.c [SCSI] NCR_D700: fix IRQ handler return type 2009-05-23 15:44:09 -05:00
NCR_D700.h
NCR_Q720.c
NCR_Q720.h
nsp32.c dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) 2009-04-07 08:31:11 -07:00
nsp32.h
nsp32_debug.c
nsp32_io.h
osst.c [SCSI] osst: replace scsi_execute_async with the block layer API 2009-03-12 12:58:10 -05:00
osst.h [SCSI] osst: replace scsi_execute_async with the block layer API 2009-03-12 12:58:10 -05:00
osst_detect.h
osst_options.h
pas16.c
pas16.h
ppa.c
ppa.h
ps3rom.c ps3rom: Use ps3_system_bus_[gs]et_drvdata() instead of direct access 2009-06-16 14:15:46 +10:00
qla1280.c [SCSI] qla1280: error recovery rewrite 2009-05-20 17:21:13 -05:00
qla1280.h [SCSI] qla1280: error recovery rewrite 2009-05-20 17:21:13 -05:00
qlogicfas.c
qlogicfas408.c
qlogicfas408.h
qlogicpti.c [SCSI] qlogicpti: use request_firmware 2009-04-03 09:25:23 -05:00
qlogicpti.h
raid_class.c [SCSI] struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-02 10:22:16 -06:00
script_asm.pl
scsi.c [SCSI] fix documentation for two functions 2009-06-08 12:23:35 -05:00
scsi.h
scsi_debug.c scsi_debug: Add support for physical block exponent and alignment 2009-06-21 11:03:54 -05:00
scsi_devinfo.c enhance device info matching for multiple tables 2009-06-21 10:52:45 -05:00
scsi_error.c [SCSI] fix up scsi_eh_lock_door() 2009-06-08 12:47:40 -05:00
scsi_ioctl.c [SCSI] struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-02 10:22:16 -06:00
scsi_lib.c sd, sr: fix Driver 'sd' needs updating message 2009-06-21 12:01:27 -05:00
scsi_lib_dma.c
scsi_logging.h
scsi_module.c
scsi_netlink.c
scsi_priv.h sd, sr: fix Driver 'sd' needs updating message 2009-06-21 12:01:27 -05:00
scsi_proc.c proc 2/2: remove struct proc_dir_entry::owner 2009-03-31 01:14:44 +04:00
scsi_sas_internal.h
scsi_scan.c [SCSI] Increase default timeout for INQUIRY 2009-05-20 17:21:13 -05:00
scsi_sysctl.c
scsi_sysfs.c sd, sr: fix Driver 'sd' needs updating message 2009-06-21 12:01:27 -05:00
scsi_tgt_if.c
scsi_tgt_lib.c block: cleanup rq->data_len usages 2009-05-11 09:50:55 +02:00
scsi_tgt_priv.h
scsi_transport_api.h
scsi_transport_fc.c [SCSI] FC transport: Locking fix for common-code FC pass-through patch 2009-06-26 10:29:48 -05:00
scsi_transport_fc_internal.h
scsi_transport_iscsi.c scsi_transport_iscsi: return -EOVERFLOW for Too many iscsi targets 2009-06-21 11:58:11 -05:00
scsi_transport_sas.c scsi_transport_sas: needs to call blk_end_request_all for SMP requests 2009-06-21 10:52:41 -05:00
scsi_transport_spi.c scsi_transport_spi: Blacklist Ultrium-3 tape for IU transfers 2009-06-21 10:52:46 -05:00
scsi_transport_srp.c [SCSI] struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-02 10:22:16 -06:00
scsi_transport_srp_internal.h
scsi_typedefs.h
scsi_wait_scan.c driver synchronization: make scsi_wait_scan more advanced 2009-04-21 19:40:00 -07:00
scsicam.c
sd.c sd, sr: fix Driver 'sd' needs updating message 2009-06-21 12:01:27 -05:00
sd.h sd: Physical block size and alignment support 2009-06-21 10:52:37 -05:00
sd_dif.c block: convert to pos and nr_sectors accessors 2009-05-11 09:50:54 +02:00
ses.c [SCSI] ses: #if 0 the unused ses_match_host() 2009-04-03 10:17:01 -05:00
sg.c block: fix sg SG_DXFER_TO_FROM_DEV regression 2009-07-10 20:31:53 +02:00
sgiwd93.c [SCSI] sgiwd93: Fix compilation warning 2009-01-02 10:58:41 -06:00
sim710.c [SCSI] struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-02 10:22:16 -06:00
sni_53c710.c dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) 2009-04-07 08:31:11 -07:00
sr.c sd, sr: fix Driver 'sd' needs updating message 2009-06-21 12:01:27 -05:00
sr.h
sr_ioctl.c [SCSI] sr: report more accurate drive status after closing the tray. 2009-04-27 09:32:30 -05:00
sr_vendor.c
st.c [SCSI] Merge branch 'linus' 2009-06-12 10:02:03 -05:00
st.h [SCSI] st: remove unused frp_sg_current 2009-01-02 12:02:25 -06:00
st_options.h
stex.c dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) 2009-04-07 08:31:11 -07:00
sun3_NCR5380.c Remove multiple KERN_ prefixes from printk formats 2009-07-08 10:30:03 -07:00
sun3_scsi.c
sun3_scsi.h
sun3_scsi_vme.c
sun3x_esp.c
sun_esp.c
sym53c416.c
sym53c416.h
t128.c
t128.h
tmscsim.c
tmscsim.h
u14-34f.c block: convert to pos and nr_sectors accessors 2009-05-11 09:50:54 +02:00
ultrastor.c
ultrastor.h
wd33c93.c
wd33c93.h
wd7000.c
zalon.c [SCSI] zalon: fix oops on attach failure 2009-06-25 11:37:23 -05:00
zorro7xx.c