[RFC PATCH 5/6] nvme: Add unlock_from_suspend

Christoph Hellwig hch at infradead.org
Thu Nov 10 15:19:15 PST 2016


On Thu, Nov 10, 2016 at 06:23:12PM -0500, Keith Busch wrote:
> On Thu, Nov 10, 2016 at 04:01:31PM -0700, Scott Bauer wrote:
> > On Tue, Nov 01, 2016 at 06:57:05AM -0700, Christoph Hellwig wrote:
> > > blk_execute_rq_nowait is the API to use - blk_mq_insert_request isn't
> > > even exported.
> > 
> > I remember now, after I changed it to use rq_nowait, why we added this wrapper
> > function and used blk_mq_insert_request.
> > 
> > When we dispatch opal commands down to the controller we're doing so in an IRQ,
> > so if we use rq_nowait, we lockup.
> 
> In this case can we push the submission off to a work queue and use
> blk_mq_insert_rq_nowait?

That's what we have to do anyway to avoid taking irqsafe locks.
(and the function is blk_execute_rq_nowait)



More information about the Linux-nvme mailing list