Re: [PATCH] blk-mq: Fix blk_execute_rq_nowait() handling of dying queues

2017-04-12 Thread Ming Lei
On Thu, Apr 13, 2017 at 2:24 AM, Bart Van Assche wrote: > On Wed, 2017-04-12 at 13:01 +0800, Ming Lei wrote: >> On Wed, Apr 12, 2017 at 7:58 AM, Bart Van Assche >> wrote: >> > >> > diff --git a/block/blk-exec.c b/block/blk-exec.c >> > index

Re: [PATCH] blk-mq: Fix blk_execute_rq_nowait() handling of dying queues

2017-04-12 Thread Bart Van Assche
On Wed, 2017-04-12 at 13:01 +0800, Ming Lei wrote: > On Wed, Apr 12, 2017 at 7:58 AM, Bart Van Assche > wrote: > > > > diff --git a/block/blk-exec.c b/block/blk-exec.c > > index 8cd0e9bc8dc8..f7d9bed2cb15 100644 > > --- a/block/blk-exec.c > > +++ b/block/blk-exec.c >

Re: [PATCH] blk-mq: Fix blk_execute_rq_nowait() handling of dying queues

2017-04-11 Thread Ming Lei
On Wed, Apr 12, 2017 at 7:58 AM, Bart Van Assche wrote: > Although blk_execute_rq_nowait() asks blk_mq_sched_insert_request() > to run the queue, the function that should run the queue > (__blk_mq_delay_run_hw_queue()) skips hardware queues for which > .tags == NULL.

[PATCH] blk-mq: Fix blk_execute_rq_nowait() handling of dying queues

2017-04-11 Thread Bart Van Assche
Although blk_execute_rq_nowait() asks blk_mq_sched_insert_request() to run the queue, the function that should run the queue (__blk_mq_delay_run_hw_queue()) skips hardware queues for which .tags == NULL. Since blk_mq_free_tag_set() clears .tags this means if blk_execute_rq_nowait() is called after