kernel-fxtec-pro1x/drivers/scsi
Robert Love 7287fb9114 [SCSI] fcoe: Fix module reference count for vports
vports are not grabbing module references but are
releasing them. This causes the module reference count
to decrement too many times and it wraps around past 0.

The solution is to do a module_put() in
fcoe_interface_release() so that the reference is only
released when the fcoe_interface is released. There is a
one-to-one relationship between the N_Port and the
fcoe_interface, so the module reference will only be
dropped when the N_Port is destroyed

To create symetry in the code this patch moves the
try_module_get() call into fcoe_interface_create(). This
means that only the N_Port will grab a reference to the
module when its corresponding fcoe_interface is created.

This patch also makes it so that the fcoe_interface_create()
routine encodes any error codes in the fcoe_interface
pointer returned. This way its caller, fcoe_create(), can
return an accurate error code.

Signed-off-by: Robert Love <robert.w.love@intel.com>
Tested-by: Ross Brattain <ross.b.brattain@intel.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
2011-02-12 10:59:30 -06:00
..
aacraid Merge branch 'master' into for-next 2010-12-22 18:57:02 +01:00
aic7xxx SCSI host lock push-down 2010-11-16 13:33:23 -08:00
aic7xxx_old tree-wide: fix comment/printk typos 2010-11-01 15:38:34 -04:00
aic94xx drivers: scsi: fix typo in comment 2010-11-03 10:05:51 -04:00
arcmsr [SCSI] remove flush_scheduled_work() usages 2011-02-12 10:31:02 -06:00
arm SCSI: arm fas216: fix missing ';' 2010-11-23 22:26:23 +00:00
be2iscsi [SCSI] be2iscsi: fix null ptr when accessing task hdr 2010-12-31 09:52:42 -06:00
bfa Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2011-01-13 10:05:56 -08:00
bnx2i [SCSI] bnx2i: Added reconnect fix connecting against Lefthand targets 2011-01-24 11:40:30 -06:00
cxgbi [SCSI] cxgb3i: fixed connection problem with iscsi private ip 2011-01-24 11:45:17 -06:00
device_handler [SCSI] scsi_dh_hp_sw: fix deadlock in start_stop_endio 2011-02-12 10:31:04 -06:00
dpt
fcoe [SCSI] fcoe: Fix module reference count for vports 2011-02-12 10:59:30 -06:00
fnic [SCSI] fnic: Bumping up fnic version from 1.4.0.145 to 1.5.0.1. 2011-02-12 10:59:26 -06:00
ibmvscsi [SCSI] ibmvfc: Improve ibmvfc_async_desc memory layout 2010-12-21 12:24:49 -06:00
libfc [SCSI] libfc:prevent dereferencing ERR_PTR in fc_tm_done() 2011-02-12 10:57:54 -06:00
libsas [SCSI] libsas: remove spurious sata control register read/write 2011-01-24 12:05:45 -06:00
lpfc Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2011-01-13 10:05:56 -08:00
megaraid [SCSI] megaraid_sas: Sanity check user supplied length before passing it to dma_alloc_coherent() 2011-02-12 10:31:03 -06:00
mpt2sas [SCSI] remove flush_scheduled_work() usages 2011-02-12 10:31:02 -06:00
mvsas [SCSI] Unify SAM_ and SAM_STAT_ macros 2010-07-28 09:07:49 -05:00
osd [SCSI] libosd: osd_req_read_sg, optimize the single entry case 2011-01-24 12:06:31 -06:00
pcmcia SCSI host lock push-down 2010-11-16 13:33:23 -08:00
pm8001 [SCSI] pm8001: simplify workqueue usage 2011-02-12 10:31:03 -06:00
qla2xxx [SCSI] qla2xxx: Use sg_next to fetch next sg element while walking sg list. 2010-12-23 16:09:47 -06:00
qla4xxx [SCSI] qla4xxx: Update driver version to 5.02.00-k5 2010-12-21 12:24:44 -06:00
sym53c8xx_2 Merge branch 'master' into for-next 2010-12-22 18:57:02 +01:00
.gitignore
3w-9xxx.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
3w-9xxx.h
3w-sas.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
3w-sas.h
3w-xxxx.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
3w-xxxx.h
53c700.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
53c700.h
53c700.scr
53c700_d.h_shipped
a100u2w.c Merge branch 'master' into for-next 2010-12-22 18:57:02 +01:00
a100u2w.h
a2091.c m68k/scsi: a2091 - Do not use legacy Scsi_Host.base 2010-05-26 19:51:08 +02:00
a2091.h m68k/scsi: a2091 - Kill a2091_scsiregs typedef 2010-05-26 19:51:07 +02:00
a3000.c m68k/scsi: a3000 - Do not use legacy Scsi_Host.base 2010-05-26 19:51:08 +02:00
a3000.h m68k/scsi: a3000 - Kill a3000_scsiregs typedef 2010-05-26 19:51:07 +02:00
a4000t.c m68k: amiga - A4000T SCSI platform device conversion 2010-05-26 19:51:09 +02:00
advansys.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
aha152x.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
aha152x.h
aha1542.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
aha1542.h SCSI host lock push-down 2010-11-16 13:33:23 -08:00
aha1740.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
aha1740.h
aic7xxx_old.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
atari_NCR5380.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
atari_scsi.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
atari_scsi.h
atp870u.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
atp870u.h
BusLogic.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
BusLogic.h SCSI host lock push-down 2010-11-16 13:33:23 -08:00
bvme6000_scsi.c
ch.c Merge branch 'llseek' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl 2010-10-22 10:52:56 -07:00
constants.c [SCSI] Fix warning: zero-length gnu_printf format string 2010-09-02 17:15:31 -03:00
dc395x.c Merge branch 'master' into for-next 2010-12-22 18:57:02 +01:00
dc395x.h
dmx3191d.c
dpt_i2o.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
dpti.h SCSI host lock push-down 2010-11-16 13:33:23 -08:00
dtc.c
dtc.h SCSI host lock push-down 2010-11-16 13:33:23 -08:00
eata.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
eata_generic.h
eata_pio.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
eata_pio.h
esp_scsi.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
esp_scsi.h
fd_mcs.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
fdomain.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
fdomain.h
FlashPoint.c
g_NCR5380.c g_NCR5380: fix broken MMIO compilation 2010-08-11 08:59:00 -07:00
g_NCR5380.h SCSI host lock push-down 2010-11-16 13:33:23 -08:00
g_NCR5380_mmio.c
gdth.c [SCSI] gdth: Add missing call to gdth_ioctl_free 2010-12-31 09:50:09 -06:00
gdth.h
gdth_ioctl.h
gdth_proc.c [SCSI] gdth: Add missing call to gdth_ioctl_free 2010-12-31 09:50:09 -06:00
gdth_proc.h
gvp11.c m68k/scsi: gvp11 - Do not use legacy Scsi_Host.base 2010-05-26 19:51:08 +02:00
gvp11.h m68k: amiga - GVP Series II SCSI zorro_driver conversion 2010-05-26 19:51:08 +02:00
hosts.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6 2010-10-22 19:36:42 -07:00
hpsa.c [SCSI] hpsa: avoid leaking stack contents to userland 2011-01-24 11:34:05 -06:00
hpsa.h [SCSI] hpsa: fix board status waiting code 2011-01-24 11:29:32 -06:00
hpsa_cmd.h [SCSI] hpsa: fixup DMA address before freeing. 2011-01-24 11:29:05 -06:00
hptiop.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
hptiop.h
ibmmca.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
imm.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
imm.h
in2000.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
in2000.h SCSI host lock push-down 2010-11-16 13:33:23 -08:00
initio.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
initio.h
ipr.c [SCSI] remove flush_scheduled_work() usages 2011-02-12 10:31:02 -06:00
ipr.h [SCSI] ipr: fix mailbox register definition and add a delay before reading 2010-12-21 12:23:55 -06:00
ips.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
ips.h
iscsi_boot_sysfs.c [SCSI] iscsi boot: mv iscsi_boot_sysfs to drivers/scsi 2010-08-06 10:45:07 -05:00
iscsi_tcp.c [SCSI] iscsi_tcp: remove sk_sleep check 2010-05-25 10:04:10 -05:00
iscsi_tcp.h
jazz_esp.c
Kconfig Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2010-10-24 13:41:39 -07:00
lasi700.c
libiscsi.c [SCSI] libiscsi: use bh locking instead of irq with session lock 2010-12-31 09:53:09 -06:00
libiscsi_tcp.c
libsrp.c
mac53c94.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
mac53c94.h
mac_esp.c
mac_scsi.c
mac_scsi.h
Makefile [SCSI] cxgb3i: change cxgb3i to use libcxgbi 2010-09-05 14:29:23 -03:00
megaraid.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
megaraid.h Merge branch 'master' into for-next 2010-12-22 18:57:02 +01:00
mesh.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
mesh.h
mvme16x_scsi.c
mvme147.c m68k/scsi: mvme147 - Kill obsolete HOSTS_C logic 2010-05-26 19:51:07 +02:00
mvme147.h
ncr53c8xx.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
ncr53c8xx.h
NCR53c406a.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
NCR5380.c [SCSI] remove flush_scheduled_work() usages 2011-02-12 10:31:02 -06:00
NCR5380.h SCSI host lock push-down 2010-11-16 13:33:23 -08:00
NCR_D700.c
NCR_D700.h
NCR_Q720.c
NCR_Q720.h
nsp32.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
nsp32.h
nsp32_debug.c
nsp32_io.h
osst.c scsi: autoconvert trivial BKL users to private mutex 2010-09-15 21:00:45 +02:00
osst.h
osst_detect.h
osst_options.h
pas16.c
pas16.h SCSI host lock push-down 2010-11-16 13:33:23 -08:00
pmcraid.c [SCSI] remove flush_scheduled_work() usages 2011-02-12 10:31:02 -06:00
pmcraid.h [SCSI] pmcraid: disable msix and expand device config entry 2010-12-09 09:41:15 -06:00
ppa.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
ppa.h
ps3rom.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
qla1280.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
qla1280.h
qlogicfas.c
qlogicfas408.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
qlogicfas408.h SCSI host lock push-down 2010-11-16 13:33:23 -08:00
qlogicpti.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
qlogicpti.h of/device: Replace struct of_device with struct platform_device 2010-08-06 09:25:50 -06:00
raid_class.c
script_asm.pl
scsi.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
scsi.h
scsi_debug.c [SCSI] scsi_debug: set resid to indicate no data-in when medium error 2010-12-22 23:26:49 -06:00
scsi_devinfo.c [SCSI] Add scsi_dev_info_list_del_keyed() 2011-01-24 12:01:07 -06:00
scsi_error.c [SCSI] Add detailed SCSI I/O errors 2011-02-12 10:33:08 -06:00
scsi_ioctl.c
scsi_lib.c [SCSI] Add detailed SCSI I/O errors 2011-02-12 10:33:08 -06:00
scsi_lib_dma.c
scsi_logging.h
scsi_module.c
scsi_netlink.c tree-wide: fix comment/printk typos 2010-11-01 15:38:34 -04:00
scsi_pm.c [SCSI] implement runtime Power Management 2010-07-28 09:07:50 -05:00
scsi_priv.h [SCSI] scsi_dh: Use scsi_devinfo functions to do matching of device_handler tables. 2011-01-24 12:02:09 -06:00
scsi_proc.c
scsi_sas_internal.h
scsi_scan.c driver core: remove CONFIG_SYSFS_DEPRECATED_V2 but keep it for block devices 2010-10-22 10:16:43 -07:00
scsi_sysctl.c
scsi_sysfs.c Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2011-01-13 10:05:56 -08:00
scsi_tgt_if.c Merge branch 'llseek' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl 2010-10-22 10:52:56 -07:00
scsi_tgt_lib.c [SCSI] tgt: fix warning 2010-08-11 00:55:42 -04:00
scsi_tgt_priv.h
scsi_trace.c
scsi_transport_api.h
scsi_transport_fc.c [SCSI] fc class: add fc host dev loss sysfs file 2010-10-07 17:09:44 -05:00
scsi_transport_fc_internal.h
scsi_transport_iscsi.c [SCSI] iscsi: add module alias 2010-12-21 12:24:48 -06:00
scsi_transport_sas.c
scsi_transport_spi.c
scsi_transport_srp.c
scsi_transport_srp_internal.h
scsi_typedefs.h
scsi_wait_scan.c
scsicam.c
sd.c [SCSI] sd,sr: kill compat SDEV_MEDIA_CHANGE event 2011-01-14 09:17:35 -06:00
sd.h [SCSI] sd: implement sd_check_events() 2011-01-14 09:17:34 -06:00
sd_dif.c block: Make the integrity mapped property a bio flag 2010-10-15 15:49:20 +02:00
ses.c
sg.c Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2010-10-24 13:41:39 -07:00
sgiwd93.c
sim710.c
sni_53c710.c
sr.c [SCSI] sd,sr: kill compat SDEV_MEDIA_CHANGE event 2011-01-14 09:17:35 -06:00
sr.h sr: implement sr_check_events() 2010-12-16 17:53:39 +01:00
sr_ioctl.c scsi: replace sr_test_unit_ready() with scsi_test_unit_ready() 2010-12-16 17:53:39 +01:00
sr_vendor.c
st.c [SCSI] st: Increase success probability in driver buffer allocation 2010-12-22 23:26:50 -06:00
st.h
st_options.h
stex.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
sun3_NCR5380.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
sun3_scsi.c block: remove wrappers for request type/flags 2010-08-07 18:17:56 +02:00
sun3_scsi.h SCSI host lock push-down 2010-11-16 13:33:23 -08:00
sun3_scsi_vme.c block: remove wrappers for request type/flags 2010-08-07 18:17:56 +02:00
sun3x_esp.c
sun_esp.c of/device: Replace struct of_device with struct platform_device 2010-08-06 09:25:50 -06:00
sym53c416.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
sym53c416.h SCSI host lock push-down 2010-11-16 13:33:23 -08:00
t128.c
t128.h SCSI host lock push-down 2010-11-16 13:33:23 -08:00
tmscsim.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
tmscsim.h
u14-34f.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
ultrastor.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
ultrastor.h SCSI host lock push-down 2010-11-16 13:33:23 -08:00
vmw_pvscsi.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
vmw_pvscsi.h
wd33c93.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
wd33c93.h SCSI host lock push-down 2010-11-16 13:33:23 -08:00
wd7000.c SCSI host lock push-down 2010-11-16 13:33:23 -08:00
zalon.c
zorro7xx.c m68k: amiga - Zorro bus modalias support 2010-05-17 21:37:41 +02:00