Thread (3 messages) 3 messages, 3 authors, 2016-05-26

Re: [PATCH] blk-mq: clear q->mq_ops if init fail

From: Christoph Hellwig <hch@lst.de>
Date: 2016-05-26 07:09:37
Also in: lkml

On Wed, May 25, 2016 at 11:23:27PM -0700, Ming Lin wrote:
From: Ming Lin <redacted>

blk_mq_init_queue() calls blk_mq_init_allocated_queue(), but q->mq_ops
was not cleared when blk_mq_init_allocated_queue() fails.
Then blk_cleanup_queue() calls blk_mq_free_queue() which will crash because:
- q->all_q_node is not added to all_q_list yet
- q->tag_set is NULL
- hctx was not setup yet or already freed

Fixed it by clearing q->mq_ops on error path.
Looks fine,

Reviewed-by: Christoph Hellwig <hch@lst.de>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help