Messages in this thread | | | Date | Fri, 19 Sep 2014 11:52:59 -0600 | From | Jens Axboe <> | Subject | Re: [PATCH] blk-mq: auto-start hw queue in requeue |
| |
On 09/19/2014 11:48 AM, Christoph Hellwig wrote: > On Fri, Sep 19, 2014 at 10:22:50PM +0800, Ming Lei wrote: >> Requests often need to be retried because of timeout, hardware >> busy or sort of reasons via blk_mq_requeue_request(), but at >> that time dispatch queue may have been stopped. >> >> This patch starts the dispatch queue automatically in requeue's >> work handler, and fixes scsi-mq's timeout issue, which can be >> triggered if there are two or more requests timedout. > > Sounds like blk_mq_requeue_work should simply call void > blk_mq_start_hw_queues where it calls blk_mq_run_queues currently.
I agree. I think Ming wanted to avoid an unnecessary bitflip if possible, but the fix is more convoluted than I would like.
-- Jens Axboe
| |