[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240430134113.GU231144@ziepe.ca>
Date: Tue, 30 Apr 2024 10:41:13 -0300
From: Jason Gunthorpe <jgg@...pe.ca>
To: Junxian Huang <huangjunxian6@...ilicon.com>
Cc: leon@...nel.org, linux-rdma@...r.kernel.org, linuxarm@...wei.com,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH for-next] RDMA/hns: Support flexible WQE buffer page size
On Tue, Apr 30, 2024 at 05:28:45PM +0800, Junxian Huang wrote:
> From: Chengchang Tang <tangchengchang@...wei.com>
>
> Currently, driver fixedly allocates 4K pages for userspace WQE buffer
> and results in HW reading WQE with a granularity of 4K even in a 64K
> system. HW has to switch pages every 4K, leading to a loss of performance.
> In order to improve performance, add support for userspace to allocate
> flexible WQE buffer page size between 4K to system PAGESIZE.
> @@ -90,7 +90,8 @@ struct hns_roce_ib_create_qp {
> __u8 log_sq_bb_count;
> __u8 log_sq_stride;
> __u8 sq_no_prefetch;
> - __u8 reserved[5];
> + __u8 pageshift;
> + __u8 reserved[4];
It doesn't make any sense to pass in a pageshift from userspace.
Kernel should detect whatever underlying physical contiguity userspace
has been able to create and configure the hardware optimally. The umem
already has all the tools to do this trivially.
Why would you need to specify anything?
Jason
Powered by blists - more mailing lists