mbox series

[v6,for-next,0/1] RDMA/hns: Support direct WQE of userspace

Message ID 20211207124901.42123-1-liangwenpeng@huawei.com (mailing list archive)
Headers show
Series RDMA/hns: Support direct WQE of userspace | expand

Message

Wenpeng Liang Dec. 7, 2021, 12:49 p.m. UTC
Direct wqe is a mechanism to fill wqe directly into the hardware. In the
case of light load, the wqe will be filled into pcie bar space of the
hardware, this will reduce one memory access operation and therefore reduce
the latency.

The user space parts is named "libhns: Add support for direct wqe".

Changes since v5:
* The direct wqe feature is enabled by default.
* Resolve the conflict with the patch of HNS_ROCE_MMAP_TYPE_DB.
  (https://patchwork.kernel.org/project/linux-rdma/patch/20211206133652.27476-1-liangwenpeng@huawei.com/)
* https://patchwork.kernel.org/project/linux-rdma/cover/20211130135740.4559-1-liangwenpeng@huawei.com/

Changes since v4:
* Add a comment to explain why direct WQE uses pgprot_device.
* https://patchwork.kernel.org/project/linux-rdma/cover/20211122033801.30807-1-liangwenpeng@huawei.com/

Changes since v3:
* Commit based on the latest code.
* Remove unused variable "ibdev" from alloc_qp_db.
* https://patchwork.kernel.org/project/linux-rdma/cover/20211116150400.23459-1-liangwenpeng@huawei.com/

Changes since v2:
* Direct wqe uses the new mmap scheme (https://patchwork.kernel.org/project/linux-rdma/patch/20211028105640.1056-1-liangwenpeng@huawei.com/).
* https://patchwork.kernel.org/project/linux-rdma/cover/1622705834-19353-1-git-send-email-liweihang@huawei.com/

Changes since v1:
* Remove 'inline' of two functions in #1.
* Enable direct wqe by default in #2.
* https://patchwork.kernel.org/project/linux-rdma/cover/1622193545-3281-1-git-send-email-liweihang@huawei.com/

Yixing Liu (1):
  RDMA/hns: Support direct wqe of userspace

 drivers/infiniband/hw/hns/hns_roce_device.h |  8 +--
 drivers/infiniband/hw/hns/hns_roce_hw_v2.c  |  3 +-
 drivers/infiniband/hw/hns/hns_roce_main.c   | 36 +++++++++++---
 drivers/infiniband/hw/hns/hns_roce_pd.c     |  3 ++
 drivers/infiniband/hw/hns/hns_roce_qp.c     | 54 ++++++++++++++++++++-
 include/uapi/rdma/hns-abi.h                 |  2 +
 6 files changed, 94 insertions(+), 12 deletions(-)

--
2.33.0

Comments

Jason Gunthorpe Dec. 15, 2021, 12:03 a.m. UTC | #1
On Tue, Dec 07, 2021 at 08:49:00PM +0800, Wenpeng Liang wrote:
> Direct wqe is a mechanism to fill wqe directly into the hardware. In the
> case of light load, the wqe will be filled into pcie bar space of the
> hardware, this will reduce one memory access operation and therefore reduce
> the latency.
> 
> The user space parts is named "libhns: Add support for direct wqe".

Applied to for-next, thanks

Please update the PR on the github

Jason
Wenpeng Liang Dec. 15, 2021, 10:15 a.m. UTC | #2
On 2021/12/15 8:03, Jason Gunthorpe wrote:
> On Tue, Dec 07, 2021 at 08:49:00PM +0800, Wenpeng Liang wrote:
>> Direct wqe is a mechanism to fill wqe directly into the hardware. In the
>> case of light load, the wqe will be filled into pcie bar space of the
>> hardware, this will reduce one memory access operation and therefore reduce
>> the latency.
>>
>> The user space parts is named "libhns: Add support for direct wqe".
> 
> Applied to for-next, thanks
> 
> Please update the PR on the github
> 

The PR has been updated.

https://github.com/linux-rdma/rdma-core/pull/1088

Thanks
Wenpeng

> Jason
> .
>