Messages in this thread | | | Subject | Re: [PATCH] blk-mq: quiesce queue while reallocating hctxs | From | Yu Kuai <> | Date | Fri, 3 Mar 2023 10:21:49 +0800 |
| |
Hi,
在 2023/03/03 9:24, Keith Busch 写道: > On Tue, Feb 21, 2023 at 05:24:36PM +0800, Yu Kuai wrote: >> From: Yu Kuai <yukuai3@huawei.com> >> >> commit 8237c01f1696 ("blk-mq: use quiesced elevator switch when >> reinitializing queues") add quiesce queue while switching elevator, >> however, if old elevator is none, queue is still not quiesced. Hence >> reallocating hctxs can concurrent with run queue. Fix it by also >> quiesce queue in the beginning of __blk_mq_update_nr_hw_queues(). > > Is this actually fixing anything? The quiesced elevator switch was to prevent > use-after-free from an elevator being torn down, but if you are not switching > elevators, then what resource does quiescing protect? > . >
What I can think of is hctx itself. run queue can fetch a hctx that will be exited, I did't found any real problems yet, but I don't think it is not good to run work for a exited or reused hctx.
Thanks, Kuai
| |