On 03/14/2017 11:48 AM, Omar Sandoval wrote: > On Tue, Mar 14, 2017 at 08:57:50AM -0600, Jens Axboe wrote: >> If we have scheduling enabled, we jump directly to insert-and-run. >> That's fine, but we run the queue async and we don't pass in information >> on whether we can block from this context or not. Fixup both these >> cases. > > Reviewed-by: Omar Sandoval <osandov@xxxxxx> > > Just one question: we call blk_mq_get_driver_tag() with wait=false in > blk_mq_try_issue_directly(). Should we change that to wait=can_block? > Maybe it's pointless to try a direct issue if we'd have to wait for a > tag anyways, though. Exactly, don't want to wait for a tag, at that point we are just pointlessly stalling an app that could perhaps be submitting more IO. So I don't think we should factor that in here, better to let the blocking vs non-blocking drivers behave the same in that regard. -- Jens Axboe