No protection on the hctx->dispatch_busy

2018-08-26 Thread jianchao.wang
Hi Ming Currently, blk_mq_update_dispatch_busy is hooked in blk_mq_dispatch_rq_list and __blk_mq_issue_directly. blk_mq_update_dispatch_busy could be invoked on multiple cpus concurrently. But there is not any protection on the hctx->dispatch_busy. We cannot ensure the update on the dispatch_bus

Re: [PATCH] blk-wbt: get back the missed wakeup from __wbt_done

2018-08-26 Thread jianchao.wang
Hi Jens On 08/25/2018 11:41 PM, Jens Axboe wrote: > do { > - set_current_state(TASK_UNINTERRUPTIBLE); > + if (test_bit(0, &data.flags)) > + break; > > - if (!has_sleeper && rq_wait_inc_below(rqw, get_limit(rwb, rw))) > + W

Re: [PATCH v2] block: fix rdma queue mapping

2018-08-26 Thread Ming Lei
On Sat, Aug 25, 2018 at 07:18:43AM -0500, Steve Wise wrote: > > > I guess this way still can't fix the request allocation crash issue > > > triggered by using blk_mq_alloc_request_hctx(), in which one hw queue > > may > > > not be mapped from any online CPU. > > > > Not really. I guess we will nee