Re: [PATCH for-next v2 0/7]RDMA/bnxt_re: Doorbell Drop Prevention

Leon Romanovsky
2023-07-18T09:40:37Z

On Sun, Jul 16, 2023 at 10:53:07PM -0700, Selvin Xavier wrote:
> The idea behind this series is to prevent Doorbell drops
> on some of the Broadcom adapters that require Doorbell
> moderation. This is achieved by pacing the doorbell writes
> into the hardware FIFO. The rate at which individual doorbells
> are written needs to be dynamically adjusted, because
> it depends on the ability of the hardware to drain the
> FIFO and on the number and behavior of individual
> doorbell writers. When congestion is detected by the user
> library, it notifies the driver and driver adjust the
> pacing parameters dynamically in a shared page, which will
> be used for pacing the Doorbells.
>
> Currently this feature is targeted only for user applications.
> The corresponding user lib patch is in the pull request.
> https://github.com/linux-rdma/rdma-core/pull/1360
>
> Thanks,
> Selivn
>
> v1 -> v2:
> Rebased the patches on top of the latest for-next branch
>
> Chandramohan Akula (7):
> bnxt_en: Update HW interface headers
> bnxt_en: Share the bar0 address with the RoCE driver
> RDMA/bnxt_re: Initialize Doorbell pacing feature
> RDMA/bnxt_re: Enable pacing support for the user apps
> RDMA/bnxt_re: Update alloc_page uapi for pacing
> RDMA/bnxt_re: Implement doorbell pacing algorithm
> RDMA/bnxt_re: Add a new uapi for driver notification

Jason, any comments?

Thanks

>
> drivers/infiniband/hw/bnxt_re/bnxt_re.h | 27 ++++
> drivers/infiniband/hw/bnxt_re/ib_verbs.c | 51 +++++-
> drivers/infiniband/hw/bnxt_re/ib_verbs.h | 2 +
> drivers/infiniband/hw/bnxt_re/main.c | 220 ++++++++++++++++++++++++++
> drivers/infiniband/hw/bnxt_re/qplib_res.h | 19 +++
> drivers/net/ethernet/broadcom/bnxt/bnxt_hsi.h | 54 +++++++
> drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c | 2 +-
> drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.h | 1 +
> include/uapi/rdma/bnxt_re-abi.h | 7 +
> 9 files changed, 379 insertions(+), 4 deletions(-)
>
> --
> 2.5.5
>