kernel-hacking-2024-linux-s.../drivers/scsi/bfa
Jing Huang c54d557c3f [SCSI] bfa: vport fixes
This patch fixes 3 bugs in vport create/delete.
1) Replace scsi_add_host() with scsi_add_host_with_dma()
2) Fix rmmod hang when there are vports configured. This is due to a race
condition between the workqueue destroy in pci remove context and the vport
delete works being handled. The fix is to use a counter to track the
vport delete work, so that workqueue destroy will not be called until all
configured vports are deleted from workqueue.
3) Fix rmmmod crash when there are PBC vport configured. PBC is not allowed
to be deleted dynamically. However, if someone try to delete it, it leaves the
vport is wrong state. The fix is to restore the vport back to original state
when the attempt to delete pbc vport delete is failed.

Signed-off-by: Jing Huang <huangj@brocade.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
2010-07-27 12:04:28 -05:00
..
include [SCSI] bfa: update to support BOFM 2010-07-27 12:04:21 -05:00
bfa_callback_priv.h
bfa_cb_ioim_macros.h [SCSI] bfa: add dynamic queue selection 2010-07-27 12:04:17 -05:00
bfa_cee.c
bfa_core.c [SCSI] bfa: enable new hardware 2010-07-27 12:04:03 -05:00
bfa_csdebug.c
bfa_fcpim.c [SCSI] bfa: add dynamic queue selection 2010-07-27 12:04:17 -05:00
bfa_fcpim_priv.h [SCSI] bfa: add dynamic queue selection 2010-07-27 12:04:17 -05:00
bfa_fcport.c [SCSI] bfa: add ioc state checking 2010-07-27 12:04:23 -05:00
bfa_fcs.c [SCSI] bfa: PBC vport create 2010-07-27 12:04:04 -05:00
bfa_fcs_lport.c [SCSI] bfa: add PBC port disable handling 2010-07-27 12:04:13 -05:00
bfa_fcs_port.c
bfa_fcs_uf.c
bfa_fcxp.c [SCSI] bfa: enable basic PBC support 2010-07-27 12:04:04 -05:00
bfa_fcxp_priv.h
bfa_fwimg_priv.h [SCSI] bfa: enable new hardware 2010-07-27 12:04:03 -05:00
bfa_hw_cb.c [SCSI] bfa: add dynamic queue selection 2010-07-27 12:04:17 -05:00
bfa_hw_ct.c [SCSI] bfa: add dynamic queue selection 2010-07-27 12:04:17 -05:00
bfa_intr.c [SCSI] bfa: add dynamic queue selection 2010-07-27 12:04:17 -05:00
bfa_intr_priv.h
bfa_ioc.c [SCSI] bfa: update to support BOFM 2010-07-27 12:04:21 -05:00
bfa_ioc.h [SCSI] bfa: update to support firmware configuation 2010-07-27 12:04:14 -05:00
bfa_ioc_cb.c [SCSI] bfa: enable new hardware 2010-07-27 12:04:03 -05:00
bfa_ioc_ct.c [SCSI] bfa: fix chip and memory initialization 2010-07-27 12:04:15 -05:00
bfa_iocfc.c [SCSI] bfa: add dynamic queue selection 2010-07-27 12:04:17 -05:00
bfa_iocfc.h [SCSI] bfa: add dynamic queue selection 2010-07-27 12:04:17 -05:00
bfa_iocfc_q.c
bfa_ioim.c [SCSI] bfa: fix possible IO double completion 2010-07-27 12:04:20 -05:00
bfa_itnim.c
bfa_log.c
bfa_log_module.c [SCSI] bfa: update to support firmware configuation 2010-07-27 12:04:14 -05:00
bfa_lps.c [SCSI] bfa: enable basic PBC support 2010-07-27 12:04:04 -05:00
bfa_lps_priv.h
bfa_module.c
bfa_modules_priv.h
bfa_os_inc.h [SCSI] bfa: fix compilation warning in powerpc 2010-05-01 14:12:11 -05:00
bfa_port.c [SCSI] bfa: fix wrong arg to callback 2010-07-27 12:04:26 -05:00
bfa_port_priv.h [SCSI] bfa: statistics and typo fix 2010-07-27 12:04:07 -05:00
bfa_priv.h [SCSI] bfa: enable basic PBC support 2010-07-27 12:04:04 -05:00
bfa_rport.c [SCSI] bfa: enable basic PBC support 2010-07-27 12:04:04 -05:00
bfa_rport_priv.h
bfa_sgpg.c [SCSI] bfa: enable basic PBC support 2010-07-27 12:04:04 -05:00
bfa_sgpg_priv.h
bfa_sm.c
bfa_timer.c
bfa_trcmod_priv.h
bfa_tskim.c
bfa_uf.c [SCSI] bfa: fix uf post and rport fcpim state machine 2010-07-27 12:04:16 -05:00
bfa_uf_priv.h
bfad.c [SCSI] bfa: add description for module parameters 2010-07-27 12:04:22 -05:00
bfad_attr.c [SCSI] bfa: vport fixes 2010-07-27 12:04:28 -05:00
bfad_attr.h
bfad_drv.h [SCSI] bfa: vport fixes 2010-07-27 12:04:28 -05:00
bfad_fwimg.c [SCSI] bfa: enable new hardware 2010-07-27 12:04:03 -05:00
bfad_im.c [SCSI] bfa: vport fixes 2010-07-27 12:04:28 -05:00
bfad_im.h [SCSI] bfa: add fc transport class based vport create/delete 2010-04-11 09:24:16 -05:00
bfad_im_compat.h [SCSI] bfa: enable new hardware 2010-07-27 12:04:03 -05:00
bfad_intr.c [SCSI] bfa: add description for module parameters 2010-07-27 12:04:22 -05:00
bfad_ipfc.h
bfad_os.c
bfad_tm.h
bfad_trcmod.h
fab.c
fabric.c [SCSI] bfa: use standards defined timeout for ELS/CT 2010-07-27 12:04:08 -05:00
fcbuild.c
fcbuild.h
fcpim.c [SCSI] bfa: fix uf post and rport fcpim state machine 2010-07-27 12:04:16 -05:00
fcptm.c
fcs.h
fcs_auth.h
fcs_fabric.h [SCSI] bfa: use standards defined timeout for ELS/CT 2010-07-27 12:04:08 -05:00
fcs_fcpim.h
fcs_fcptm.h
fcs_fcxp.h
fcs_lport.h
fcs_ms.h
fcs_port.h
fcs_rport.h [SCSI] bfa: fix uf post and rport fcpim state machine 2010-07-27 12:04:16 -05:00
fcs_trcmod.h
fcs_uf.h
fcs_vport.h [SCSI] bfa: PBC vport create 2010-07-27 12:04:04 -05:00
fdmi.c [SCSI] bfa: use standards defined timeout for ELS/CT 2010-07-27 12:04:08 -05:00
loop.c
lport_api.c [SCSI] bfa: fix rport speed setting 2010-07-27 12:04:10 -05:00
lport_priv.h
Makefile
ms.c [SCSI] bfa: use standards defined timeout for ELS/CT 2010-07-27 12:04:08 -05:00
n2n.c
ns.c [SCSI] bfa: use standards defined timeout for ELS/CT 2010-07-27 12:04:08 -05:00
plog.c
rport.c [SCSI] bfa: fix uf post and rport fcpim state machine 2010-07-27 12:04:16 -05:00
rport_api.c [SCSI] bfa: fix rport speed setting 2010-07-27 12:04:10 -05:00
rport_ftrs.c [SCSI] bfa: fix rport speed setting 2010-07-27 12:04:10 -05:00
scn.c [SCSI] bfa: use standards defined timeout for ELS/CT 2010-07-27 12:04:08 -05:00
vfapi.c
vport.c [SCSI] bfa: vport state machine fix 2010-07-27 12:04:05 -05:00