From: Jens Axboe Date: Wed, 15 Jul 2020 15:33:37 +0000 (-0600) Subject: Revert "blk-rq-qos: remove redundant finish_wait to rq_qos_wait." X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=e791ee6885f7e9e32c3e551cadea8bc6effaae1e;p=linux.git Revert "blk-rq-qos: remove redundant finish_wait to rq_qos_wait." This reverts commit 826f2f48da8c331ac51e1381998d318012d66550. Qian Cai reports that this commit causes stalls with swap. Revert until the reason can be figured out. Reported-by: Qian Cai Signed-off-by: Jens Axboe --- diff --git a/block/blk-rq-qos.c b/block/blk-rq-qos.c index 18f3eab9f768a..656460636ad34 100644 --- a/block/blk-rq-qos.c +++ b/block/blk-rq-qos.c @@ -273,6 +273,8 @@ void rq_qos_wait(struct rq_wait *rqw, void *private_data, if (data.got_token) break; if (!has_sleeper && acquire_inflight_cb(rqw, private_data)) { + finish_wait(&rqw->wait, &data.wq); + /* * We raced with wbt_wake_function() getting a token, * which means we now have two. Put our local token