[SCSI] fix q->lock not held warning when target is busy
We cannot call blk_plug_device from scsi_target_queue_ready because the q lock is not held. And we do not need to call it from there because when we return 0, the scsi_request_fn not_ready handling will plug the queue for us if needed. Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
This commit is contained in:
Родитель
e832b3ca65
Коммит
b4efdd586b
|
@ -1291,10 +1291,8 @@ static inline int scsi_target_queue_ready(struct Scsi_Host *shost,
|
|||
if (--starget->target_blocked == 0) {
|
||||
SCSI_LOG_MLQUEUE(3, starget_printk(KERN_INFO, starget,
|
||||
"unblocking target at zero depth\n"));
|
||||
} else {
|
||||
blk_plug_device(sdev->request_queue);
|
||||
} else
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
if (scsi_target_is_busy(starget)) {
|
||||
|
|
Загрузка…
Ссылка в новой задаче