summaryrefslogtreecommitdiff
path: root/include/scsi
diff options
context:
space:
mode:
authorMike Christie <michael.christie@oracle.com>2022-02-27 02:04:31 +0300
committerMartin K. Petersen <martin.petersen@oracle.com>2022-03-02 07:56:28 +0300
commitb07c348f8ffb2885500a1c93f7be0edeead61ad5 (patch)
tree5c5e7bd3c5731fe8605e89bd1dc2232b95d28a2b /include/scsi
parent8dd3dff3bf3e9d91df3a4c3665d3da873b6095b8 (diff)
downloadlinux-b07c348f8ffb2885500a1c93f7be0edeead61ad5.tar.xz
scsi: iscsi: Speed up session unblocking and removal
When the iSCSI class was added upstream, blocking a queue was fast because it just set some flag bits and didn't handle I/O that was in the process of being sent to the driver. That's no longer the case so blocking a queue is expensive and we can end up with a backlog of blocks by the time we have relogged in and are trying to start the queues. For the session unblock case, this has try to cancel the block and recovery work in case they are still queued so we can avoid unneeded queue manipulations. For removal, we also now try to cancel all the recovery related works since a couple lines down we will set the session and device state so running those functions are not necessary. Link: https://lore.kernel.org/r/20220226230435.38733-3-michael.christie@oracle.com Reviewed-by: Lee Duncan <lduncan@suse.com> Reviewed-by: Chris Leech <cleech@redhat.com> Signed-off-by: Mike Christie <michael.christie@oracle.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'include/scsi')
0 files changed, 0 insertions, 0 deletions