summaryrefslogtreecommitdiffstats
path: root/drivers/target
diff options
context:
space:
mode:
authorJan Kara <jack@suse.cz>2022-04-01 12:27:50 +0200
committerJens Axboe <axboe@kernel.dk>2022-04-17 19:34:32 -0600
commit075a53b78b815301f8d3dd1ee2cd99554e34f0dd (patch)
tree1ee475cc8a7b1e20af6a23ff799f5a174cc96324 /drivers/target
parent4e54a2493e582361adc3bfbf06c7d50d19d18837 (diff)
downloadlinux-075a53b78b815301f8d3dd1ee2cd99554e34f0dd.tar.bz2
bfq: Make sure bfqg for which we are queueing requests is online
Bios queued into BFQ IO scheduler can be associated with a cgroup that was already offlined. This may then cause insertion of this bfq_group into a service tree. But this bfq_group will get freed as soon as last bio associated with it is completed leading to use after free issues for service tree users. Fix the problem by making sure we always operate on online bfq_group. If the bfq_group associated with the bio is not online, we pick the first online parent. CC: stable@vger.kernel.org Fixes: e21b7a0b9887 ("block, bfq: add full hierarchical scheduling and cgroups support") Tested-by: "yukuai (C)" <yukuai3@huawei.com> Signed-off-by: Jan Kara <jack@suse.cz> Reviewed-by: Christoph Hellwig <hch@lst.de> Link: https://lore.kernel.org/r/20220401102752.8599-9-jack@suse.cz Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'drivers/target')
0 files changed, 0 insertions, 0 deletions