[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZKWFrirq9Eemm788@ovpn-8-34.pek2.redhat.com>
Date: Wed, 5 Jul 2023 23:01:02 +0800
From: Ming Lei <ming.lei@...hat.com>
To: chengming.zhou@...ux.dev
Cc: axboe@...nel.dk, hch@....de, tj@...nel.org,
linux-block@...r.kernel.org, linux-kernel@...r.kernel.org,
Chengming Zhou <zhouchengming@...edance.com>
Subject: Re: [PATCH v2 1/4] blk-mq: use percpu csd to remote complete instead
of per-rq csd
On Thu, Jun 29, 2023 at 07:03:56PM +0800, chengming.zhou@...ux.dev wrote:
> From: Chengming Zhou <zhouchengming@...edance.com>
>
> If request need to be completed remotely, we insert it into percpu llist,
> and smp_call_function_single_async() if llist is empty previously.
>
> We don't need to use per-rq csd, percpu csd is enough. And the size of
> struct request is decreased by 24 bytes.
>
> This way is cleaner, and looks correct, given block softirq is guaranteed to be
> scheduled to consume the list if one new request is added to this percpu list,
> either smp_call_function_single_async() returns -EBUSY or 0.
>
> Signed-off-by: Chengming Zhou <zhouchengming@...edance.com>
> ---
> v2:
> - Change to use call_single_data_t, which avoid to use 2 cache lines
> for 1 csd, as suggested by Ming Lei.
> - Improve the commit log, the explanation is copied from Ming Lei.
Reviewed-by: Ming Lei <ming.lei@...hat.com>
Thanks,
Ming
Powered by blists - more mailing lists