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

Commit 336c3d8c authored by Elias Oltmanns's avatar Elias Oltmanns Committed by Jens Axboe
Browse files

block: Fix blk_start_queueing() to not kick a stopped queue



blk_start_queueing() should act like the generic queue unplugging
and kicking and ignore a stopped queue. Such a queue may not be
run until after a call to blk_start_queue().

Signed-off-by: default avatarElias Oltmanns <eo@nebensachen.de>
Signed-off-by: default avatarJens Axboe <jens.axboe@oracle.com>
parent c0ddffa8
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -890,9 +890,11 @@ EXPORT_SYMBOL(blk_get_request);
 */
void blk_start_queueing(struct request_queue *q)
{
	if (!blk_queue_plugged(q))
	if (!blk_queue_plugged(q)) {
		if (unlikely(blk_queue_stopped(q)))
			return;
		q->request_fn(q);
	else
	} else
		__generic_unplug_device(q);
}
EXPORT_SYMBOL(blk_start_queueing);