Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f69d1b5b authored by Gilad Broner's avatar Gilad Broner
Browse files

Revert "scsi: check request was requeued before scheduling requeue work"



This reverts change I5de4cb0df00aa0c5dc66a4faad71fa04446f6545.

Disabling requeueing of a completed request will cause a request
not to be retried (by requeueing it) in cases where the low-level
driver detected some error but finished processing of the requeust.
Specifically, not retrying the request will cause calls to functions
such as blk_execute_rq to block forever.

Change-Id: Ic1e96bb4996afa05f7d9bde3167d1400a174b737
Signed-off-by: default avatarGilad Broner <gbroner@codeaurora.org>
parent 3fc4ced6
Loading
Loading
Loading
Loading
+2 −3
Original line number Diff line number Diff line
@@ -182,8 +182,7 @@ static void __scsi_queue_insert(struct scsi_cmnd *cmd, int reason, int unbusy)
	 * before blk_cleanup_queue() finishes.
	 */
	spin_lock_irqsave(q->queue_lock, flags);
	/* Schedule requeue work only if request was successfully requeued */
	if (blk_requeue_request(q, cmd->request))
	blk_requeue_request(q, cmd->request);
	kblockd_schedule_work(q, &device->requeue_work);
	spin_unlock_irqrestore(q->queue_lock, flags);
}