bfq: Fix warning in bfqq_request_over_limit()
authorJan Kara <jack@suse.cz>
Thu, 7 Apr 2022 14:07:38 +0000 (16:07 +0200)
committerJens Axboe <axboe@kernel.dk>
Fri, 29 Apr 2022 12:45:37 +0000 (06:45 -0600)
commit09df6a75fffa68169c5ef9bef990cd7ba94f3eef
tree6d39e476cea24dfe612dc9ea2dd6c971fe90a05d
parent4cddeacad6d4b23493a108d0705e7d2ab89ba5a3
bfq: Fix warning in bfqq_request_over_limit()

People are occasionally reporting a warning bfqq_request_over_limit()
triggering reporting that BFQ's idea of cgroup hierarchy (and its depth)
does not match what generic blkcg code thinks. This can actually happen
when bfqq gets moved between BFQ groups while bfqq_request_over_limit()
is running. Make sure the code is safe against BFQ queue being moved to
a different BFQ group.

Fixes: 76f1df88bbc2 ("bfq: Limit number of requests consumed by each cgroup")
CC: stable@vger.kernel.org
Link: https://lore.kernel.org/all/CAJCQCtTw_2C7ZSz7as5Gvq=OmnDiio=HRkQekqWpKot84sQhFA@mail.gmail.com/
Reported-by: Chris Murphy <lists@colorremedies.com>
Reported-by: "yukuai (C)" <yukuai3@huawei.com>
Signed-off-by: Jan Kara <jack@suse.cz>
Link: https://lore.kernel.org/r/20220407140738.9723-1-jack@suse.cz
Signed-off-by: Jens Axboe <axboe@kernel.dk>
block/bfq-iosched.c