mbox series

[GIT,PULL] Please pull RDMA subsystem changes

Message ID 20230901003031.GA111366@nvidia.com (mailing list archive)
State Superseded
Headers show
Series [GIT,PULL] Please pull RDMA subsystem changes | expand

Pull-request

git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma.git tags/for-linus

Message

Jason Gunthorpe Sept. 1, 2023, 12:30 a.m. UTC
Hi Linus,

Not a big cylce this time, lots of scattered changes.

Thanks,
Jason

The following changes since commit 06c2afb862f9da8dc5efa4b6076a0e48c3fbaaa5:

  Linux 6.5-rc1 (2023-07-09 13:53:13 -0700)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma.git tags/for-linus

for you to fetch changes up to f5acc36b0714b7b8510a8b436087d33a65cb05f4:

  IB/hfi1: Reduce printing of errors during driver shut down (2023-08-22 17:31:45 +0300)

----------------------------------------------------------------
v6.6 merge window RDMA pull request

Many small changes across the subystem, some highlights:

- Usual driver cleanups in qedr, siw, erdma, hfi1, mlx4/5, irdma, mthca,
  hns, and bnxt_re

- siw now works over tunnel and other netdevs with a MAC address by
  removing assumptions about a MAC/GID from the connection manager

- "Doorbell Pacing" for bnxt_re - this is a best effort scheme to allow
  userspace to slow down the doorbell rings if the HW gets full

- irdma egress VLAN priority, better QP/WQ sizing

- rxe bug fixes in queue draining and srq resizing

- Support more ethernet speed options in the core layer

- DMABUF support for bnxt_re

- Multi-stage MTT support for erdma to allow much bigger MR registrations

- A irdma fix with a CVE that came in too late to go to -rc, missing
  bounds checking for 0 length MRs

----------------------------------------------------------------
Arnd Bergmann (1):
      RDMA/irdma: Fix building without IPv6

Bernard Metzler (1):
      RDMA/siw: Fix tx thread initialization.

Bob Pearson (4):
      RDMA/rxe: Move work queue code to subroutines
      RDMA/rxe: Fix unsafe drain work queue code
      RDMA/rxe: Fix rxe_modify_srq
      RDMA/rxe: Fix incomplete state save in rxe_requester

Brendan Cunningham (1):
      RDMA/hfi1: Move user SDMA system memory pinning code to its own file

Chandramohan Akula (11):
      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
      bnxt_re: Reorganize the resource stats
      bnxt_re: Update the hw counters for resource stats
      bnxt_re: Expose the missing hw counters
      bnxt_re: Update the debug counters for doorbell pacing

Cheng Xu (3):
      RDMA/erdma: Renaming variable names and field names of struct erdma_mem
      RDMA/erdma: Refactor the storage structure of MTT entries
      RDMA/erdma: Implement hierarchical MTT

Chengchang Tang (4):
      RDMA/hns: Fix port active speed
      RDMA/hns: Fix CQ and QP cache affinity
      RDMA/hns: Dump whole QP/CQ/MR resource in raw
      RDMA/hns: Support hns HW stats

Christophe JAILLET (1):
      IB/hfi1: Use struct_size()

Christopher Bednarz (1):
      RDMA/irdma: Prevent zero-length STAG registration

Chuck Lever (4):
      RDMA/siw: Fabricate a GID on tun and loopback devices
      RDMA/core: Set gid_attr.ndev for iWARP devices
      RDMA/cma: Deduplicate error flow in cma_validate_port()
      RDMA/cma: Avoid GID lookups on iWARP devices

Douglas Miller (1):
      IB/hfi1: Reduce printing of errors during driver shut down

Guoqing Jiang (4):
      RDMA/cxgb4: Set sq_sig_type correctly
      RDMA/siw: Balance the reference of cep->kref in the error path
      RDMA/siw: Correct wrong debug message
      RDMA/siw: Call llist_reverse_order in siw_run_sq

Gustavo A. R. Silva (2):
      RDMA/irdma: Replace one-element array with flexible-array member
      RDMA/mlx4: Copy union directly

Haoyue Xu (1):
      RDMA/core: Get IB width and speed from netdev

Ivan Orlov (1):
      RDMA: Make all 'class' structures const

Jinjie Ruan (1):
      RDMA/hfi1: Use list_for_each_entry() helper

Julia Lawall (3):
      RDMA/erdma: use vmalloc_array and vcalloc
      RDMA/siw: use vmalloc_array and vcalloc
      RDMA/bnxt_re: use vmalloc_array and vcalloc

Junxian Huang (3):
      RDMA/hns: Remove VF extend configuration
      RDMA/hns: Fix incorrect post-send with direct wqe of wr-list
      RDMA/hns: Fix inaccurate error label name in init instance

Kalesh AP (6):
      RDMA/bnxt_re: Fix max_qp count for virtual functions
      RDMA/bnxt_re: Remove a redundant flag
      RDMA/bnxt_re: Cleanup bnxt_re_process_raw_qp_pkt_rx() function
      RDMA/bnxt_re: Avoid unnecessary memset
      RDMA/bnxt_re: Remove unnecessary variable initializations
      IB/core: Add more speed parsing in ib_get_width_and_speed()

Kashyap Desai (1):
      RDMA/bnxt_re: Initialize mutex dbq_lock

Krzysztof Czurylo (1):
      RDMA/irdma: Add table based lookup for CQ pointer during an event

Leon Romanovsky (3):
      RDMA/irdma: Add missing kernel-doc in irdma_setup_umode_qp()
      RDMA/bnxt_re: Fix kernel doc errors
      Revert "IB/isert: Fix incorrect release of isert connection"

Luoyouming (1):
      RDMA/hns: Support get XRCD number from firmware

Michael Margolin (1):
      RDMA/efa: Add RDMA write HW statistics counters

Minjie Du (3):
      RDMA/qedr: Remove a duplicate assignment in irdma_query_ah()
      RDMA/qedr: Remove a duplicate assignment in qedr_create_gsi_qp()
      RDMA/qedr: Remove duplicate assignments of va

Mustafa Ismail (2):
      RDMA/irdma: Implement egress VLAN priority
      RDMA/irdma: Cleanup and rename irdma_netdev_vlan_ipv6()

Rohit Chavan (2):
      RDMA/rxe: Fix redundant break statement in switch-case.
      RDMA/mlx5: Fix trailing */ formatting in block comment

Ruan Jinjie (4):
      RDMA/mlx: Remove unnecessary variable initializations
      RDMA/mthca: Remove unnecessary NULL assignments
      RDMA: Remove unnecessary ternary operators
      RDMA: Remove unnecessary NULL values

Saravanan Vajravel (1):
      RDMA/bnxt_re: Add support for dmabuf pinned memory regions

Selvin Xavier (2):
      RDMA/bnxt_re: Fix the sideband buffer size handling for FW commands
      RDMA/bnxt_re: Protect the PD table bitmap

Shetu Ayalew (1):
      IB/mlx5: Add HW counter called rx_dct_connect

Shiraz Saleem (1):
      RDMA/irdma: Drop unused kernel push code

Sindhu Devale (4):
      RDMA/irdma: Drop a local in irdma_sc_get_next_aeqe
      RDMA/irdma: Refactor error handling in create CQP
      RDMA/irdma: Allow accurate reporting on QP max send/recv WR
      RDMA/irdma: Use HW specific minimum WQ size

Xiang Yang (1):
      IB/uverbs: Fix an potential error pointer dereference

Yang Li (1):
      RDMA/irdma: Fix one kernel-doc comment

Yonatan Nachum (1):
      RDMA/efa: Fix wrong resources deallocation order

Yuanyuan Zhong (1):
      RDMA/mlx5: align MR mem allocation size to power-of-two

Yue Haibing (3):
      RDMA/hns: Remove unused function declarations
      RDMA/hns: Remove unused declaration hns_roce_modify_srq()
      RDMA Remove unused function declarations

 drivers/infiniband/core/cache.c                    |  11 +
 drivers/infiniband/core/cma.c                      |  32 +-
 drivers/infiniband/core/iwpm_util.c                |   2 +-
 drivers/infiniband/core/netlink.c                  |   2 +-
 drivers/infiniband/core/uverbs_main.c              |  35 +-
 .../infiniband/core/uverbs_std_types_counters.c    |   2 +
 drivers/infiniband/core/verbs.c                    | 109 ++++-
 drivers/infiniband/hw/bnxt_re/bnxt_re.h            |  35 +-
 drivers/infiniband/hw/bnxt_re/hw_counters.c        |  84 +++-
 drivers/infiniband/hw/bnxt_re/hw_counters.h        |  55 +++
 drivers/infiniband/hw/bnxt_re/ib_verbs.c           | 255 +++++++----
 drivers/infiniband/hw/bnxt_re/ib_verbs.h           |   6 +
 drivers/infiniband/hw/bnxt_re/main.c               | 277 ++++++++++--
 drivers/infiniband/hw/bnxt_re/qplib_fp.c           |  47 +-
 drivers/infiniband/hw/bnxt_re/qplib_rcfw.c         |  66 +--
 drivers/infiniband/hw/bnxt_re/qplib_res.c          |  38 +-
 drivers/infiniband/hw/bnxt_re/qplib_res.h          |  23 +-
 drivers/infiniband/hw/bnxt_re/qplib_sp.c           |  85 ++--
 drivers/infiniband/hw/bnxt_re/qplib_sp.h           |   2 +-
 drivers/infiniband/hw/cxgb4/qp.c                   |   2 +-
 drivers/infiniband/hw/efa/efa_admin_cmds_defs.h    |  13 +
 drivers/infiniband/hw/efa/efa_com_cmd.c            |   8 +-
 drivers/infiniband/hw/efa/efa_com_cmd.h            |  10 +-
 drivers/infiniband/hw/efa/efa_verbs.c              |  24 +-
 drivers/infiniband/hw/erdma/erdma_hw.h             |  18 +-
 drivers/infiniband/hw/erdma/erdma_qp.c             |   2 +-
 drivers/infiniband/hw/erdma/erdma_verbs.c          | 434 ++++++++++++++-----
 drivers/infiniband/hw/erdma/erdma_verbs.h          |  36 +-
 drivers/infiniband/hw/hfi1/Makefile                |   1 +
 drivers/infiniband/hw/hfi1/affinity.c              |   4 +-
 drivers/infiniband/hw/hfi1/chip.c                  |   8 +-
 drivers/infiniband/hw/hfi1/device.c                |  72 ++--
 drivers/infiniband/hw/hfi1/hfi.h                   |   4 +-
 drivers/infiniband/hw/hfi1/pin_system.c            | 474 +++++++++++++++++++++
 drivers/infiniband/hw/hfi1/pinning.h               |  20 +
 drivers/infiniband/hw/hfi1/pio.c                   |   9 +-
 drivers/infiniband/hw/hfi1/user_sdma.c             | 441 +------------------
 drivers/infiniband/hw/hfi1/user_sdma.h             |  17 +-
 drivers/infiniband/hw/hns/hns_roce_device.h        |  35 +-
 drivers/infiniband/hw/hns/hns_roce_hem.c           |   2 +-
 drivers/infiniband/hw/hns/hns_roce_hw_v2.c         | 151 +++----
 drivers/infiniband/hw/hns/hns_roce_hw_v2.h         |  14 +-
 drivers/infiniband/hw/hns/hns_roce_main.c          |  86 +++-
 drivers/infiniband/hw/hns/hns_roce_qp.c            |  28 +-
 drivers/infiniband/hw/hns/hns_roce_restrack.c      |  75 +---
 drivers/infiniband/hw/irdma/cm.c                   |  90 +++-
 drivers/infiniband/hw/irdma/ctrl.c                 |  23 +-
 drivers/infiniband/hw/irdma/hw.c                   |  63 ++-
 drivers/infiniband/hw/irdma/i40iw_hw.c             |   1 +
 drivers/infiniband/hw/irdma/i40iw_hw.h             |   2 +-
 drivers/infiniband/hw/irdma/icrdma_hw.c            |   1 +
 drivers/infiniband/hw/irdma/icrdma_hw.h            |   1 +
 drivers/infiniband/hw/irdma/irdma.h                |   1 +
 drivers/infiniband/hw/irdma/main.h                 |   8 +-
 drivers/infiniband/hw/irdma/type.h                 |   3 +-
 drivers/infiniband/hw/irdma/uk.c                   | 218 +++++-----
 drivers/infiniband/hw/irdma/user.h                 |  19 +-
 drivers/infiniband/hw/irdma/utils.c                |  25 ++
 drivers/infiniband/hw/irdma/verbs.c                | 259 +++++++----
 drivers/infiniband/hw/irdma/verbs.h                |   5 +-
 drivers/infiniband/hw/mlx4/main.c                  |  47 +-
 drivers/infiniband/hw/mlx5/counters.c              |   2 +
 drivers/infiniband/hw/mlx5/mad.c                   |  40 +-
 drivers/infiniband/hw/mlx5/mr.c                    |   8 +-
 drivers/infiniband/hw/mthca/mthca_provider.c       |  20 +-
 drivers/infiniband/hw/ocrdma/ocrdma_verbs.c        |   2 +-
 drivers/infiniband/hw/qedr/qedr_roce_cm.c          |   1 -
 drivers/infiniband/hw/qedr/verbs.c                 |   2 +-
 drivers/infiniband/hw/qib/qib_file_ops.c           |  17 +-
 drivers/infiniband/sw/rxe/rxe_comp.c               |   4 +
 drivers/infiniband/sw/rxe/rxe_loc.h                |   6 -
 drivers/infiniband/sw/rxe/rxe_qp.c                 | 159 ++++---
 drivers/infiniband/sw/rxe/rxe_req.c                |  45 +-
 drivers/infiniband/sw/rxe/rxe_resp.c               |   4 +
 drivers/infiniband/sw/rxe/rxe_srq.c                |  60 +--
 drivers/infiniband/sw/rxe/rxe_verbs.c              |   1 -
 drivers/infiniband/sw/siw/siw.h                    |   4 +-
 drivers/infiniband/sw/siw/siw_cm.c                 |   1 -
 drivers/infiniband/sw/siw/siw_main.c               |  62 +--
 drivers/infiniband/sw/siw/siw_qp.c                 |   4 +-
 drivers/infiniband/sw/siw/siw_qp_tx.c              |  52 ++-
 drivers/infiniband/sw/siw/siw_verbs.c              |  12 +-
 drivers/infiniband/ulp/isert/ib_isert.c            |   2 +
 drivers/infiniband/ulp/rtrs/rtrs-clt.c             |  19 +-
 drivers/infiniband/ulp/rtrs/rtrs-srv-sysfs.c       |   2 +-
 drivers/infiniband/ulp/rtrs/rtrs-srv.c             |  15 +-
 drivers/infiniband/ulp/rtrs/rtrs-srv.h             |   2 +-
 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/rdma/ib_verbs.h                            |   2 -
 include/rdma/iw_cm.h                               |  21 -
 include/uapi/rdma/bnxt_re-abi.h                    |   7 +
 include/uapi/rdma/irdma-abi.h                      |   9 +
 94 files changed, 2892 insertions(+), 1670 deletions(-)
 create mode 100644 drivers/infiniband/hw/hfi1/pin_system.c
 create mode 100644 drivers/infiniband/hw/hfi1/pinning.h

Comments

pr-tracker-bot@kernel.org Sept. 2, 2023, midnight UTC | #1
The pull request you sent on Thu, 31 Aug 2023 21:30:31 -0300:

> git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma.git tags/for-linus

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/f7e97ce26972ae7be8bbbae8d819ff311d4c5900

Thank you!