[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20230901003031.GA111366@nvidia.com>
Date: Thu, 31 Aug 2023 21:30:31 -0300
From: Jason Gunthorpe <jgg@...dia.com>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: linux-rdma@...r.kernel.org, linux-kernel@...r.kernel.org,
Leon Romanovsky <leonro@...dia.com>
Subject: [GIT PULL] Please pull RDMA subsystem changes
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
Download attachment "signature.asc" of type "application/pgp-signature" (229 bytes)
Powered by blists - more mailing lists