On 7/14/20 8:19 PM, Stephen Rothwell wrote: > Hi all, > > On Tue, 14 Jul 2020 19:21:24 -0400 Qian Cai <cai@xxxxxx> wrote: >> >> On Sun, Jun 28, 2020 at 09:56:25AM -0400, Guo Xuenan wrote: >>> It is no need do finish_wait twice after acquiring inflight. >>> >>> Signed-off-by: Guo Xuenan <guoxuenan@xxxxxxxxxx> >>> --- >>> block/blk-rq-qos.c | 2 -- >>> 1 file changed, 2 deletions(-) >>> >>> diff --git a/block/blk-rq-qos.c b/block/blk-rq-qos.c >>> index 656460636ad3..18f3eab9f768 100644 >>> --- a/block/blk-rq-qos.c >>> +++ b/block/blk-rq-qos.c >>> @@ -273,8 +273,6 @@ 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 >>> -- >>> 2.25.4 >> >> Reverting this commit fixed an issue that swapping workloads will stall for >> days without being able to make any progress below. > > I have reverted that commit from linux-next today. Thanks, I'll revert it locally too. -- Jens Axboe