aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMing Lei <[email protected]>2018-08-27 15:24:42 +0800
committerMartin K. Petersen <[email protected]>2018-08-27 12:59:43 -0400
commit23aa8e69f2c6ceb0bdca52f4450ad1f45675ca73 (patch)
tree40fdcb31fcbccb2219bf922f59d79355fb6fafe2
parent4e8065aa6c6f50765290be27ab8a64a4e44cb009 (diff)
Revert "scsi: core: fix scsi_host_queue_ready"
This reverts commit 265d59aacbce7e50bdc1f5d25033c38dd70b3767. There is fundamental issue in commit 328728630d9f2bf1 (scsi: core: avoid host-wide host_busy counter for scsi_mq) because SCSI's host busy counter may not be same with counter of blk-mq's inflight tags, especially in case of none io scheduler. So revert this commit first. Cc: Omar Sandoval <[email protected]>, Cc: "Martin K. Petersen" <[email protected]>, Cc: James Bottomley <[email protected]>, Cc: Christoph Hellwig <[email protected]>, Cc: Don Brace <[email protected]> Cc: Kashyap Desai <[email protected]> Cc: Mike Snitzer <[email protected]> Cc: Hannes Reinecke <[email protected]> Cc: Laurence Oberman <[email protected]> Cc: Bart Van Assche <[email protected]> Cc: Guenter Roeck <[email protected]> Cc: Jens Axboe <[email protected]> Reported-by: Jens Axboe <[email protected]> Signed-off-by: Ming Lei <[email protected]> Signed-off-by: Martin K. Petersen <[email protected]>
-rw-r--r--drivers/scsi/scsi_lib.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c
index 0adfb3bce0fd..1046679f5473 100644
--- a/drivers/scsi/scsi_lib.c
+++ b/drivers/scsi/scsi_lib.c
@@ -1611,7 +1611,7 @@ static inline int scsi_host_queue_ready(struct request_queue *q,
else
busy = 0;
if (atomic_read(&shost->host_blocked) > 0) {
- if (busy)
+ if (busy || scsi_host_busy(shost))
goto starved;
/*