[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <3bbfb5e1-c5d7-8f3b-4b96-6dc02be0550d@kernel.dk>
Date: Sat, 31 Oct 2020 09:00:49 -0600
From: Jens Axboe <axboe@...nel.dk>
To: Sebastian Andrzej Siewior <bigeasy@...utronix.de>,
Sagi Grimberg <sagi@...mberg.me>
Cc: Christoph Hellwig <hch@...radead.org>, linux-block@...r.kernel.org,
Thomas Gleixner <tglx@...utronix.de>,
David Runge <dave@...epmap.de>, linux-rt-users@...r.kernel.org,
linux-kernel@...r.kernel.org,
Peter Zijlstra <peterz@...radead.org>,
Daniel Wagner <dwagner@...e.de>, Mike Galbraith <efault@....de>
Subject: Re: [PATCH 3/3] blk-mq: Use llist_head for blk_cpu_done
On 10/31/20 4:41 AM, Sebastian Andrzej Siewior wrote:
> On 2020-10-29 14:07:59 [-0700], Sagi Grimberg wrote:
>>> in which context?
>>
>> Not sure what is the question.
>
> The question is in which context do you complete your requests. My guess
> by now is "usually softirq/NAPI and context in rare error case".
There really aren't any rules for this, and it's perfectly legit to
complete from process context. Maybe you're a kthread driven driver and
that's how you handle completions. The block completion path has always
been hard IRQ safe, but possible to call from anywhere.
--
Jens Axboe
Powered by blists - more mailing lists