linux/drivers/scsi/qedi
Mike Christie 891e2639de scsi: iscsi: Stop queueing during ep_disconnect
During ep_disconnect we have been doing iscsi_suspend_tx/queue to block new
I/O but every driver except cxgbi and iscsi_tcp can still get I/O from
__iscsi_conn_send_pdu() if we haven't called iscsi_conn_failure() before
ep_disconnect. This could happen if we were terminating the session, and
the logout timed out before it was even sent to libiscsi.

Fix the issue by adding a helper which reverses the bind_conn call that
allows new I/O to be queued. Drivers implementing ep_disconnect can use this
to make sure new I/O is not queued to them when handling the disconnect.

Link: https://lore.kernel.org/r/20210525181821.7617-3-michael.christie@oracle.com
Reviewed-by: Lee Duncan <lduncan@suse.com>
Signed-off-by: Mike Christie <michael.christie@oracle.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2021-06-02 01:28:19 -04:00
..
Kconfig treewide: replace '---help---' in Kconfig files with 'help' 2020-06-14 01:57:21 +09:00
Makefile treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
qedi_dbg.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 440 2019-06-05 17:37:17 +02:00
qedi_dbg.h scsi: Fix various misspellings of "connect" 2019-10-24 21:22:32 -04:00
qedi_debugfs.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 440 2019-06-05 17:37:17 +02:00
qedi_fw_api.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 440 2019-06-05 17:37:17 +02:00
qedi_fw_iscsi.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 440 2019-06-05 17:37:17 +02:00
qedi_fw_scsi.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 440 2019-06-05 17:37:17 +02:00
qedi_fw.c scsi: qedi: Add firmware error recovery invocation support 2020-09-08 22:40:25 -04:00
qedi_gbl.h scsi: qedi: Add PCI shutdown handler support 2020-03-26 22:38:54 -04:00
qedi_hsi.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 440 2019-06-05 17:37:17 +02:00
qedi_iscsi.c scsi: iscsi: Stop queueing during ep_disconnect 2021-06-02 01:28:19 -04:00
qedi_iscsi.h scsi: qedi: Add PCI shutdown handler support 2020-03-26 22:38:54 -04:00
qedi_main.c Merge branch '5.12/scsi-fixes' into 5.13/scsi-staging 2021-04-05 22:57:29 -04:00
qedi_nvm_iscsi_cfg.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 440 2019-06-05 17:37:17 +02:00
qedi_sysfs.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 440 2019-06-05 17:37:17 +02:00
qedi_version.h SCSI fixes on 20190622 2019-06-22 09:39:03 -07:00
qedi.h scsi: qedi: Add schedule_hw_err_handler callback for fan failure 2020-10-02 21:24:15 -04:00