linux_dsm_epyc7002/drivers/scsi/qla2xxx
Martin Wilck 5a263892d7 scsi: qla2xxx: check UNLOADING before posting async work
qlt_free_session_done() tries to post async PRLO / LOGO, and waits for the
completion of these async commands. If UNLOADING is set, this is doomed to
timeout, because the async logout command will never complete.

The only way to avoid waiting pointlessly is to fail posting these commands
in the first place if the driver is in UNLOADING state.  In general,
posting any command should be avoided when the driver is UNLOADING.

With this patch, "rmmod qla2xxx" completes without noticeable delay.

Link: https://lore.kernel.org/r/20200421204621.19228-3-mwilck@suse.com
Fixes: 45235022da ("scsi: qla2xxx: Fix driver unload by shutting down chip")
Acked-by: Arun Easi <aeasi@marvell.com>
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com>
Signed-off-by: Martin Wilck <mwilck@suse.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2020-04-21 23:53:34 -04:00
..
Kconfig treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
qla_attr.c scsi: qla2xxx: Add endianizer macro calls to fc host stats 2020-02-24 12:34:27 -05:00
qla_bsg.c scsi: qla2xxx: Return appropriate failure through BSG Interface 2020-02-28 20:32:29 -05:00
qla_bsg.h scsi: qla2xxx: Add 28xx flash primary/secondary status/image mechanism 2019-03-19 12:22:55 -04:00
qla_dbg.c scsi: qla2xxx: Fix regression warnings 2020-04-13 13:58:18 -04:00
qla_dbg.h scsi: qla2xxx: Fix unbound NVME response length 2020-01-30 10:31:47 -05:00
qla_def.h scsi: qla2xxx: Update BPM enablement semantics. 2020-02-28 20:32:33 -05:00
qla_devtbl.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
qla_dfs.c scsi: qla2xxx: fix FW resource count values 2020-02-28 20:32:31 -05:00
qla_dsd.h scsi: qla2xxx: Include the <asm/unaligned.h> header file from qla_dsd.h 2019-08-12 21:34:04 -04:00
qla_fw.h scsi: qla2xxx: Update BPM enablement semantics. 2020-02-28 20:32:33 -05:00
qla_gbl.h scsi: qla2xxx: Update BPM enablement semantics. 2020-02-28 20:32:33 -05:00
qla_gs.c scsi: qla2xxx: Fix FCP-SCSI FC4 flag passing error 2020-02-28 20:32:28 -05:00
qla_init.c scsi: qla2xxx: Fix regression warnings 2020-04-13 13:58:18 -04:00
qla_inline.h scsi: qla2xxx: Add a shadow variable to hold disc_state history of fcport 2019-12-19 22:42:44 -05:00
qla_iocb.c scsi: qla2xxx: Convert MAKE_HANDLE() from a define into an inline function 2020-02-28 19:55:01 -05:00
qla_isr.c scsi: qla2xxx: Fix regression warnings 2020-04-13 13:58:18 -04:00
qla_mbx.c scsi: qla2xxx: Fix regression warnings 2020-04-13 13:58:18 -04:00
qla_mid.c scsi: qla2xxx: Use a dedicated interrupt handler for 'handshake-required' ISPs 2020-02-28 20:32:30 -05:00
qla_mr.c scsi: qla2xxx: Convert MAKE_HANDLE() from a define into an inline function 2020-02-28 19:55:01 -05:00
qla_mr.h scsi: qla2xxx: Introduce the dsd32 and dsd64 data structures 2019-04-29 17:24:51 -04:00
qla_nvme.c block-5.7-2020-04-10 2020-04-10 10:06:54 -07:00
qla_nvme.h scsi: qla2xxx: Modify NVMe include directives 2019-08-12 21:34:08 -04:00
qla_nx2.c scsi: qla2xxx: Suppress a Coveritiy complaint about integer overflow 2019-08-12 21:34:07 -04:00
qla_nx2.h scsi: qla2xxx: Remove unused symbols 2018-02-12 11:43:24 -05:00
qla_nx.c scsi: qla2xxx: Use get_unaligned_*() instead of open-coding these functions 2020-01-02 21:53:31 -05:00
qla_nx.h scsi: qla2xxx: Improve Linux kernel coding style conformance 2019-08-12 21:34:04 -04:00
qla_os.c scsi: qla2xxx: check UNLOADING before posting async work 2020-04-21 23:53:34 -04:00
qla_settings.h
qla_sup.c scsi: qla2xxx: Return appropriate failure through BSG Interface 2020-02-28 20:32:29 -05:00
qla_target.c scsi: qla2xxx: Fix FCP-SCSI FC4 flag passing error 2020-02-28 20:32:28 -05:00
qla_target.h scsi: tcm_qla2xxx: Make qlt_alloc_qfull_cmd() set cmd->se_cmd.map_tag 2020-02-10 22:46:54 -05:00
qla_tmpl.c scsi: qla2xxx: Use endian macros to assign static fields in fwdump header 2020-02-24 12:34:29 -05:00
qla_tmpl.h scsi: qla2xxx: Fix sparse warning reported by kbuild bot 2020-02-28 19:49:00 -05:00
qla_version.h scsi: qla2xxx: Update driver version to 10.01.00.25-k 2020-02-28 20:32:37 -05:00
tcm_qla2xxx.c scsi: tcm_qla2xxx: Make qlt_alloc_qfull_cmd() set cmd->se_cmd.map_tag 2020-02-10 22:46:54 -05:00
tcm_qla2xxx.h scsi: qla2xxx: deadlock by configfs_depend_item 2018-12-19 21:26:38 -05:00