[PATCH] nvme-loop: set blocking flag

Christoph Hellwig hch at lst.de
Thu Oct 17 22:10:14 PDT 2024


On Thu, Oct 17, 2024 at 11:39:24AM -0600, Jens Axboe wrote:
> On 10/17/24 11:20 AM, Keith Busch wrote:
> > From: Keith Busch <kbusch at kernel.org>
> > 
> > Commit 505363957fad ("nvmet: fix nvme status code when namespace is
> > disabled") introduced a mutex lock in the io path for target. The loop
> > target connects this to the blk-mq submission side, so it requires the
> > blocking flag set so that queue_rq doesn't happen inside an rcu context.
> 
> Looks fine to me, but might be worth looking at doing that a bit
> differently so that the target loop driver can remain non-blocking
> as it should be considerably more efficient.

Yes.  When designing the nvmet code back in the day (gosh do I feel old)
we tried to avoid blocking in the main handling thread in general.

So if we can get rid of the mutex that would be great.




More information about the Linux-nvme mailing list