Message ID | ea9f8241d420025a1e9e553d2c966fcc8b32335c.1588080449.git.zhangweiping@didiglobal.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Fix potential kernel panic when increase hardware queue | expand |
On Tue, Apr 28, 2020 at 9:29 PM Weiping Zhang <zhangweiping@didiglobal.com> wrote: > > blk_mq_realloc_tag_set_tags will update set->nr_hw_queues, so > save old set->nr_hw_queues before call this function. > > Reviewed-by: Bart Van Assche <bvanassche@acm.org> > Signed-off-by: Weiping Zhang <zhangweiping@didiglobal.com> > --- > block/blk-mq.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/block/blk-mq.c b/block/blk-mq.c > index f789b3e1b3ab..a79afbe60ca6 100644 > --- a/block/blk-mq.c > +++ b/block/blk-mq.c > @@ -3347,11 +3347,11 @@ static void __blk_mq_update_nr_hw_queues(struct blk_mq_tag_set *set, > blk_mq_sysfs_unregister(q); > } > > + prev_nr_hw_queues = set->nr_hw_queues; > if (blk_mq_realloc_tag_set_tags(set, set->nr_hw_queues, nr_hw_queues) < > 0) > goto reregister; > > - prev_nr_hw_queues = set->nr_hw_queues; > set->nr_hw_queues = nr_hw_queues; > blk_mq_update_queue_map(set); > fallback: > -- > 2.18.1 > Reviewed-by: Ming Lei <ming.lei@redhat.com> thanks, Ming Lei
diff --git a/block/blk-mq.c b/block/blk-mq.c index f789b3e1b3ab..a79afbe60ca6 100644 --- a/block/blk-mq.c +++ b/block/blk-mq.c @@ -3347,11 +3347,11 @@ static void __blk_mq_update_nr_hw_queues(struct blk_mq_tag_set *set, blk_mq_sysfs_unregister(q); } + prev_nr_hw_queues = set->nr_hw_queues; if (blk_mq_realloc_tag_set_tags(set, set->nr_hw_queues, nr_hw_queues) < 0) goto reregister; - prev_nr_hw_queues = set->nr_hw_queues; set->nr_hw_queues = nr_hw_queues; blk_mq_update_queue_map(set); fallback: