rv1126-kernel/drivers/scsi
James.Smart@Emulex.Com 5c44cd2afa [SCSI] fix target scanning oops with fc transport class
We have some nasty issues with 2.6.12-rc6. Any request to scan on
the lpfc or qla2xxx FC adapters will oops. What is happening is the
system is defaulting to non-transport registered targets, which
inherit the parent of the scan. On this second scan, performed by
the attribute, the parent becomes the shost instead of the rport.
The slave functions in the 2 FC adapters use starget_to_rport()
routines, which incorrectly map the shost as an rport pointer.

Additionally, this pointed out other weaknesses:
- If the target structure is torn down outside of the transport,
  we have no method for it to be regenerated at the proper parent.
- We have race conditions on the target being allocated by both
  the midlayer scan (parent=shost) and by the fc transport
  (parent=rport).

Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2005-08-08 17:14:55 -05:00
..
aacraid [PATCH] aacraid: Fix for controller load based timeouts 2005-08-01 21:37:59 -07:00
aic7xxx Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-for-linus-2.6 2005-08-04 13:08:29 -07:00
aic7xxx_old
arm [PATCH] Driver Core: drivers/s390/net/qeth_sys.c - drivers/usb/gadget/pxa2xx_udc.c: update device attribute callbacks 2005-06-20 15:15:35 -07:00
dpt [PATCH] turn many #if $undefined_string into #ifdef $undefined_string 2005-07-27 16:26:08 -07:00
ibmvscsi [SCSI] scsi/ibmvscsi/srp.h: Fix a wrong type code used for SRP_LOGIN_REJ 2005-07-30 08:59:04 -05:00
lpfc [PATCH] turn many #if $undefined_string into #ifdef $undefined_string 2005-07-27 16:26:08 -07:00
megaraid [SCSI] remove scsi_set_device 2005-06-26 08:31:47 -05:00
pcmcia [PATCH] pcmcia: remove references to pcmcia/version.h 2005-07-07 18:24:07 -07:00
qla2xxx [PATCH] More qla2xxx configuration fixes 2005-07-27 22:31:35 -07:00
sym53c8xx_2 [PATCH] turn many #if $undefined_string into #ifdef $undefined_string 2005-07-27 16:26:08 -07:00
3w-9xxx.c [PATCH] PCI: make drivers use the pci shutdown callback instead of the driver core callback. 2005-06-27 21:52:47 -07:00
3w-9xxx.h
3w-xxxx.c [PATCH] PCI: make drivers use the pci shutdown callback instead of the driver core callback. 2005-06-27 21:52:47 -07:00
3w-xxxx.h
53c7xx.c
53c7xx.h
53c7xx.scr
53c7xx_d.h_shipped
53c7xx_u.h_shipped
53c700.c [PATCH] Driver Core: drivers/s390/net/qeth_sys.c - drivers/usb/gadget/pxa2xx_udc.c: update device attribute callbacks 2005-06-20 15:15:35 -07:00
53c700.h
53c700.scr
53c700_d.h_shipped
BusLogic.c [SCSI] allow sleeping in ->eh_host_reset_handler() 2005-06-17 12:05:18 -05:00
BusLogic.h
FlashPoint.c [SCSI] drivers/scsi/FlashPoint.c: cleanups 2005-05-20 12:53:34 -05:00
Kconfig [PATCH] SCSI_SATA has to be a tristate 2005-07-31 00:43:00 -04:00
Makefile [SCSI] add scsi changer driver 2005-05-20 12:53:50 -05:00
NCR53C9x.c [SCSI] allow sleeping in ->eh_bus_reset_handler() 2005-06-17 12:05:10 -05:00
NCR53C9x.h
NCR53c406a.c [PATCH] turn many #if $undefined_string into #ifdef $undefined_string 2005-07-27 16:26:08 -07:00
NCR5380.c [SCSI] allow sleeping in ->eh_bus_reset_handler() 2005-06-17 12:05:10 -05:00
NCR5380.h [SCSI] Remove no-op implementations of SCSI EH hooks 2005-06-17 12:04:45 -05:00
NCR_D700.c
NCR_D700.h
NCR_Q720.c
NCR_Q720.h
a100u2w.c
a100u2w.h
a2091.c [SCSI] allow sleeping in ->eh_host_reset_handler() 2005-06-17 12:05:18 -05:00
a2091.h
a3000.c [SCSI] allow sleeping in ->eh_host_reset_handler() 2005-06-17 12:05:18 -05:00
a3000.h
advansys.c [SCSI] remove scsi_cmnd->abort_reason 2005-06-26 12:14:46 -05:00
advansys.h
aha152x.c [SCSI] allow sleeping in ->eh_device_reset_handler() 2005-06-17 12:05:03 -05:00
aha152x.h
aha1542.c [SCSI] allow sleeping in ->eh_host_reset_handler() 2005-06-17 12:05:18 -05:00
aha1542.h [SCSI] Remove no-op implementations of SCSI EH hooks 2005-06-17 12:04:45 -05:00
aha1740.c
aha1740.h
ahci.c [PATCH] libata: ahci: remove ata_port_start/stop() calls 2005-06-28 00:08:00 -04:00
aic7xxx_old.c [SCSI] remove scsi_set_device 2005-06-26 08:31:47 -05:00
amiga7xx.c
amiga7xx.h
ata_piix.c libata: Check PCI sub-class code before disabling AHCI 2005-07-28 15:54:15 -04:00
atari_NCR5380.c
atari_dma_emul.c
atari_scsi.c
atari_scsi.h
atp870u.c [SCSI] drivers/scsi/atp870u.c: make a function static 2005-05-20 12:53:31 -05:00
atp870u.h
blz1230.c
blz2060.c
bvme6000.c
bvme6000.h
ch.c [SCSI] convert scsi changer driver from class simple 2005-05-20 12:53:51 -05:00
constants.c
cpqfcTS.h
cpqfcTSchip.h
cpqfcTScontrol.c
cpqfcTSi2c.c
cpqfcTSinit.c [SCSI] remove scsi_set_device 2005-06-26 08:31:47 -05:00
cpqfcTSioctl.h
cpqfcTSstructs.h
cpqfcTStrigger.c
cpqfcTStrigger.h
cpqfcTSworker.c
cyberstorm.c
cyberstormII.c
dc395x.c [PATCH] clean up inline static vs static inline 2005-07-27 16:26:20 -07:00
dc395x.h
dec_esp.c
dmx3191d.c [SCSI] Remove no-op implementations of SCSI EH hooks 2005-06-17 12:04:45 -05:00
dpt_i2o.c [SCSI] Bug 4940 Repeatable Kernel Panic on Adaptec 2015S I20 device on bootup 2005-08-08 11:51:38 -05:00
dpti.h [PATCH] drivers/scsi/dpt*: remove version.h dependencies 2005-06-25 16:25:03 -07:00
dtc.c [PATCH] turn many #if $undefined_string into #ifdef $undefined_string 2005-07-27 16:26:08 -07:00
dtc.h [PATCH] turn many #if $undefined_string into #ifdef $undefined_string 2005-07-27 16:26:08 -07:00
eata.c [SCSI] remove scsi_cmnd.eh_state 2005-06-26 12:14:10 -05:00
eata_generic.h
eata_pio.c [SCSI] remove scsi_cmnd->abort_reason 2005-06-26 12:14:46 -05:00
eata_pio.h
esp.c [PATCH] drivers/scsi NULL noise removal 2005-04-26 07:43:42 -07:00
esp.h
fastlane.c
fcal.c [SCSI] Remove no-op implementations of SCSI EH hooks 2005-06-17 12:04:45 -05:00
fcal.h
fd_mcs.c [SCSI] allow sleeping in ->eh_bus_reset_handler() 2005-06-17 12:05:10 -05:00
fdomain.c [PATCH] clean up inline static vs static inline 2005-07-27 16:26:20 -07:00
fdomain.h
g_NCR5380.c [SCSI] Remove no-op implementations of SCSI EH hooks 2005-06-17 12:04:45 -05:00
g_NCR5380.h [SCSI] Remove no-op implementations of SCSI EH hooks 2005-06-17 12:04:45 -05:00
g_NCR5380_mmio.c
gdth.c [SCSI] remove scsi_set_device 2005-06-26 08:31:47 -05:00
gdth.h
gdth_ioctl.h
gdth_kcompat.h
gdth_proc.c
gdth_proc.h
gvp11.c [SCSI] allow sleeping in ->eh_host_reset_handler() 2005-06-17 12:05:18 -05:00
gvp11.h
hosts.c [SCSI] remove scsi_set_device 2005-06-26 08:31:47 -05:00
hosts.h
ibmmca.c [SCSI] allow sleeping in ->eh_host_reset_handler() 2005-06-17 12:05:18 -05:00
ibmmca.h
ide-scsi.c [SCSI] allow sleeping in ->eh_host_reset_handler() 2005-06-17 12:05:18 -05:00
imm.c [SCSI] allow sleeping in ->eh_bus_reset_handler() 2005-06-17 12:05:10 -05:00
imm.h
in2000.c [SCSI] allow sleeping in ->eh_bus_reset_handler() 2005-06-17 12:05:10 -05:00
in2000.h [SCSI] Remove no-op implementations of SCSI EH hooks 2005-06-17 12:04:45 -05:00
initio.c [PATCH] turn many #if $undefined_string into #ifdef $undefined_string 2005-07-27 16:26:08 -07:00
initio.h [PATCH] drivers/scsi/initio.c: cleanups 2005-06-25 16:25:00 -07:00
ipr.c [PATCH] PCI: make drivers use the pci shutdown callback instead of the driver core callback. 2005-06-27 21:52:47 -07:00
ipr.h [SCSI] ipr: Driver version 2.0.14 2005-05-20 12:53:45 -05:00
ips.c [SCSI] ServeRAID V7.12.02 2005-08-02 10:09:03 -05:00
ips.h [SCSI] ServeRAID V7.12.02 2005-08-02 10:09:03 -05:00
jazz_esp.c
lasi700.c
libata-core.c Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-for-linus-2.6 2005-07-26 13:28:47 -07:00
libata-scsi.c [PATCH] libata fix read capacity handling for more than 2TB 2005-06-27 00:47:48 -04:00
libata.h libata: bump version 2005-05-29 14:48:20 -04:00
mac53c94.c [PATCH] openfirmware: generate device table for userspace 2005-07-06 12:55:20 -07:00
mac53c94.h
mac_esp.c
mac_scsi.c [SCSI] Remove no-op implementations of SCSI EH hooks 2005-06-17 12:04:45 -05:00
mac_scsi.h [SCSI] Remove no-op implementations of SCSI EH hooks 2005-06-17 12:04:45 -05:00
mca_53c9x.c
megaraid.c Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-for-linus-2.6 2005-07-26 13:28:47 -07:00
megaraid.h [SCSI] remove scsi_cmnd->state 2005-06-26 12:16:24 -05:00
mesh.c [PATCH] openfirmware: generate device table for userspace 2005-07-06 12:55:20 -07:00
mesh.h
mvme16x.c
mvme16x.h
mvme147.c [SCSI] allow sleeping in ->eh_host_reset_handler() 2005-06-17 12:05:18 -05:00
mvme147.h
ncr53c8xx.c [SCSI] remove scsi_set_device 2005-06-26 08:31:47 -05:00
ncr53c8xx.h
nsp32.c [SCSI] remove scsi_set_device 2005-06-26 08:31:47 -05:00
nsp32.h
nsp32_debug.c
nsp32_io.h
oktagon_esp.c
oktagon_io.S
osst.c [PATCH] class: convert drivers/scsi/* to use the new class api instead of class_simple 2005-06-20 15:15:08 -07:00
osst.h
osst_detect.h
osst_options.h
pas16.c [PATCH] turn many #if $undefined_string into #ifdef $undefined_string 2005-07-27 16:26:08 -07:00
pas16.h [SCSI] Remove no-op implementations of SCSI EH hooks 2005-06-17 12:04:45 -05:00
pci2000.h
pluto.c [SCSI] Remove no-op implementations of SCSI EH hooks 2005-06-17 12:04:45 -05:00
pluto.h
ppa.c [SCSI] allow sleeping in ->eh_bus_reset_handler() 2005-06-17 12:05:10 -05:00
ppa.h
psi240i.c
psi240i.h
psi_chip.h
ql1040_fw.h [SCSI] qla1280: update firmware 2005-05-20 12:53:13 -05:00
ql1280_fw.h [SCSI] qla1280: update firmware 2005-05-20 12:53:13 -05:00
ql12160_fw.h [SCSI] qla1280: update firmware 2005-05-20 12:53:13 -05:00
qla1280.c [SCSI] scsi/qla1280: replace schedule_timeout() with ssleep() 2005-06-26 08:31:26 -05:00
qla1280.h
qlogicfas.c [SCSI] Remove no-op implementations of SCSI EH hooks 2005-06-17 12:04:45 -05:00
qlogicfas408.c [SCSI] allow sleeping in ->eh_bus_reset_handler() 2005-06-17 12:05:10 -05:00
qlogicfas408.h [SCSI] Remove no-op implementations of SCSI EH hooks 2005-06-17 12:04:45 -05:00
qlogicfc.c [SCSI] remove scsi_set_device 2005-06-26 08:31:47 -05:00
qlogicfc_asm.c
qlogicisp.c [SCSI] remove scsi_set_device 2005-06-26 08:31:47 -05:00
qlogicisp_asm.c
qlogicpti.c
qlogicpti.h
qlogicpti_asm.c
sata_nv.c libata: Fix use-after-iounmap 2005-05-26 21:54:27 -04:00
sata_promise.c Automatic merge of /spare/repo/linux-2.6/.git branch HEAD 2005-06-04 00:40:40 -04:00
sata_promise.h
sata_qstor.c libata: Fix use-after-iounmap 2005-05-26 21:54:27 -04:00
sata_sil.c [PATCH] sata_sil: Fix FIFO PCI Bus Arbitration kernel oops 2005-06-09 03:06:22 -04:00
sata_sis.c libata: Fix use-after-iounmap 2005-05-26 21:54:27 -04:00
sata_svw.c [PATCH] sata_svw: bump version number 2005-06-09 03:10:56 -04:00
sata_sx4.c libata: Fix use-after-iounmap 2005-05-26 21:54:27 -04:00
sata_uli.c libata: Fix use-after-iounmap 2005-05-26 21:54:27 -04:00
sata_via.c libata: Fix use-after-iounmap 2005-05-26 21:54:27 -04:00
sata_vsc.c Automatic merge of /spare/repo/netdev-2.6 branch use-after-unmap 2005-05-29 14:24:57 -04:00
script_asm.pl
scsi.c [SCSI] add TYPE_RBC to our type table 2005-07-11 12:38:33 -05:00
scsi.h
scsi_debug.c [PATCH] make various thing static 2005-06-24 00:06:43 -07:00
scsi_debug.h
scsi_devinfo.c
scsi_error.c [SCSI] use list_for_each_entry_safe in scsi_error.c 2005-06-26 12:20:42 -05:00
scsi_ioctl.c
scsi_lib.c Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-for-linus-2.6 2005-07-26 13:28:47 -07:00
scsi_logging.h
scsi_module.c
scsi_priv.h [SCSI] remove scsi_eh_eflags_ macros 2005-06-26 12:17:24 -05:00
scsi_proc.c
scsi_scan.c [SCSI] fix target scanning oops with fc transport class 2005-08-08 17:14:55 -05:00
scsi_sysctl.c
scsi_sysfs.c [PATCH] make various thing static 2005-06-24 00:06:43 -07:00
scsi_transport_fc.c [SCSI] fix target scanning oops with fc transport class 2005-08-08 17:14:55 -05:00
scsi_transport_iscsi.c
scsi_transport_spi.c [SCSI] SPI transport class, don't negotiate options not supported 2005-07-11 17:04:43 -05:00
scsi_typedefs.h
scsicam.c
sd.c [SCSI] Redundant this_count check in sd_init_command() 2005-07-14 11:25:17 -04:00
seagate.c [SCSI] allow sleeping in ->eh_bus_reset_handler() 2005-06-17 12:05:10 -05:00
seagate.h [SCSI] Remove no-op implementations of SCSI EH hooks 2005-06-17 12:04:45 -05:00
sg.c [PATCH] class: convert drivers/scsi/* to use the new class api instead of class_simple 2005-06-20 15:15:08 -07:00
sgiwd93.c [SCSI] allow sleeping in ->eh_host_reset_handler() 2005-06-17 12:05:18 -05:00
sgiwd93.h
sim710.c
sr.c
sr.h
sr_ioctl.c [SCSI] drivers/scsi/sr_ioctl.c: check for failed allocation 2005-04-21 16:14:05 -04:00
sr_vendor.c
st.c [SCSI] Fix SCSI tape oops at module removal 2005-08-02 10:14:36 -05:00
st.h
st_options.h
sun3_NCR5380.c
sun3_scsi.c
sun3_scsi.h
sun3_scsi_vme.c
sun3x_esp.c [SCSI] drivers/scsi/NCR53C9x.c: make a struct static 2005-05-20 12:53:32 -05:00
sym53c8xx_comm.h
sym53c8xx_defs.h
sym53c416.c [SCSI] allow sleeping in ->eh_host_reset_handler() 2005-06-17 12:05:18 -05:00
sym53c416.h [SCSI] Remove no-op implementations of SCSI EH hooks 2005-06-17 12:04:45 -05:00
t128.c [SCSI] Remove no-op implementations of SCSI EH hooks 2005-06-17 12:04:45 -05:00
t128.h [PATCH] turn many #if $undefined_string into #ifdef $undefined_string 2005-07-27 16:26:08 -07:00
tmscsim.c [SCSI] allow sleeping in ->eh_bus_reset_handler() 2005-06-17 12:05:10 -05:00
tmscsim.h
u14-34f.c [SCSI] remove scsi_cmnd.eh_state 2005-06-26 12:14:10 -05:00
ultrastor.c [SCSI] allow sleeping in ->eh_abort_handler() 2005-06-17 12:04:55 -05:00
ultrastor.h
wd33c93.c
wd33c93.h
wd7000.c [SCSI] allow sleeping in ->eh_host_reset_handler() 2005-06-17 12:05:18 -05:00
zalon.c