diff options
author | Hannes Reinecke <hare@suse.de> | 2020-02-28 08:53:15 +0100 |
---|---|---|
committer | Martin K. Petersen <martin.petersen@oracle.com> | 2020-02-29 02:54:52 +0100 |
commit | dcece99e86b1191d2789fb5b5caa4c5b7fc2bfef (patch) | |
tree | 89a76da20eaf9c6a2add2f031c13bcdfde241253 /include/scsi | |
parent | scsi: aacraid: use scsi_host_(block,unblock) to block I/O (diff) | |
download | linux-dcece99e86b1191d2789fb5b5caa4c5b7fc2bfef.tar.xz linux-dcece99e86b1191d2789fb5b5caa4c5b7fc2bfef.zip |
scsi: core: add scsi_host_busy_iter()
Add an iterator scsi_host_busy_iter() to traverse all busy commands. If
locking against concurrent command completions is required, it has to be
provided by the caller.
Link: https://lore.kernel.org/r/20200228075318.91255-11-hare@suse.de
Signed-off-by: Hannes Reinecke <hare@suse.de>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'include/scsi')
-rw-r--r-- | include/scsi/scsi_host.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/include/scsi/scsi_host.h b/include/scsi/scsi_host.h index 613c3820028e..eff12445b823 100644 --- a/include/scsi/scsi_host.h +++ b/include/scsi/scsi_host.h @@ -761,6 +761,9 @@ extern void scsi_block_requests(struct Scsi_Host *); extern int scsi_host_block(struct Scsi_Host *shost); extern int scsi_host_unblock(struct Scsi_Host *shost, int new_state); +void scsi_host_busy_iter(struct Scsi_Host *, + bool (*fn)(struct scsi_cmnd *, void *, bool), void *priv); + struct class_container; /* |