[GIT PULL] Please pull RDMA subsystem changes

From: Jason Gunthorpe
Date: Thu Jan 11 2024 - 20:07:25 EST


Hi Linus,

A ordinary pull request for the new year. I think many were off over
December.

Thanks,
Jason

The following changes since commit a39b6ac3781d46ba18193c9dbb2110f31e9bffe9:

Linux 6.7-rc5 (2023-12-10 14:33:40 -0800)

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 d24b923f1d696ddacb09f0f2d1b1f4f045cfe65e:

RDMA/bnxt_re: Fix error code in bnxt_re_create_cq() (2024-01-08 11:41:49 +0200)

----------------------------------------------------------------
RDMA v6.8 merge window

Small cycle, with some typical driver updates

- General code tidying in siw, hfi1, idrdma, usnic, hns rtrs and bnxt_re

- Many small siw cleanups without an overeaching theme

- Debugfs stats for hns

- Fix a TX queue timeout in IPoIB and missed locking of the mcast list

- Support more features of P7 devices in bnxt_re including a new work
submission protocol

- CQ interrupts for MANA

- netlink stats for erdma

- EFA multipath PCI support

- Fix Incorrect MR invalidation in iser

----------------------------------------------------------------
Bernard Metzler (1):
RDMA/siw: Use ib_umem_get() to pin user pages

Chandramohan Akula (2):
RDMA/bnxt_re: Refactor the queue index update
RDMA/bnxt_re: Remove roundup_pow_of_two depth for all hardware queue resources

Cheng Xu (2):
RDMA/erdma: Introduce dma pool for hardware responses of CMDQ requests
RDMA/erdma: Add hardware statistics support

Chengchang Tang (3):
RDMA/hns: Rename the interrupts
RDMA/hns: Remove unnecessary checks for NULL in mtr_alloc_bufs()
RDMA/hns: Fix memory leak in free_mr_init()

Dan Carpenter (1):
RDMA/bnxt_re: Fix error code in bnxt_re_create_cq()

Daniel Vacek (1):
IB/ipoib: Fix mcast list locking

Eric Biggers (2):
RDMA/siw: Use crypto_shash_digest() in siw_qp_prepare_tx()
RDMA/irdma: Use crypto_shash_digest() in irdma_ieq_check_mpacrc()

Guoqing Jiang (21):
RDMA/siw: Introduce siw_get_page
RDMA/siw: Introduce siw_update_skb_rcvd
RDMA/siw: Use iov.iov_len in kernel_sendmsg
RDMA/siw: Remove goto lable in siw_mmap
RDMA/siw: Remove rcu from siw_qp
RDMA/siw: No need to check term_info.valid before call siw_send_terminate
RDMA/siw: Factor out siw_rx_data helper
RDMA/siw: Introduce SIW_STAG_MAX_INDEX
RDMA/siw: Add one parameter to siw_destroy_cpulist
RDMA/siw: Introduce siw_cep_set_free_and_put
RDMA/siw: Introduce siw_free_cm_id
RDMA/siw: Cleanup siw_accept
RDMA/siw: Remove siw_sk_save_upcalls
RDMA/siw: Fix typo
RDMA/siw: Only check attrs->cap.max_send_wr in siw_create_qp
RDMA/siw: Introduce siw_destroy_cep_sock
RDMA/siw: Update comments for siw_qp_sq_process
RDMA/siw: Move tx_cpu ahead
RDMA/siw: Reduce memory usage of struct siw_rx_stream
RDMA/siw: Set qp_state in siw_query_qp
RDMA/siw: Call orq_get_current if possible

Jack Wang (2):
RDMA/IPoIB: Fix error code return in ipoib_mcast_join
RDMA/IPoIB: Add tx timeout work to recover queue stop situation

Junxian Huang (5):
RDMA/hns: Fix inappropriate err code for unsupported operations
RDMA/hns: Add debugfs to hns RoCE
RDMA/hns: Support SW stats with debugfs
RDMA/hns: Response dmac to userspace
RDMA/hns: Add a max length of gid table

Leon Romanovsky (2):
RDMA/usnic: Silence uninitialized symbol smatch warnings
Expose c0 and SW encap ICM for RDMA

Long Li (3):
RDMA/mana_ib: register RDMA device with GDMA
RDMA/mana_ib: query device capabilities
RDMA/mana_ib: Add CQ interrupt support for RAW QP

Mark Bloch (2):
net/mlx5: E-Switch, expose eswitch manager vport
RDMA/mlx5: Expose register c0 for RDMA device

Md Haris Iqbal (1):
RDMA/rtrs-clt: Add warning logs for RDMA events

Michael Margolin (1):
RDMA/efa: Add EFA query MR support

Philipp Stanner (1):
RDMA/hfi1: Copy userspace arrays safely

Randy Dunlap (1):
IB/iser: iscsi_iser.h: fix kernel-doc warning and spellos

Selvin Xavier (10):
RDMA/bnxt_re: Support new 5760X P7 devices
RDMA/bnxt_re: Update the BAR offsets
RDMA/bnxt_re: Update the HW interface definitions
RDMA/bnxt_re: Get the toggle bits from CQ completions
RDMA/bnxt_re: Doorbell changes
RDMA/bnxt_re: Adds MSN table capability for Gen P7 adapters
RDMA/bnxt_re: Add UAPI to share a page with user space
RDMA/bnxt_re: Share a page to expose per CQ info with userspace
RDMA/bnxt_re: Fix the offset for GenP7 adapters for user applications
RDMA/bnxt_re: Fix the sparse warnings

Sergey Gorenko (1):
IB/iser: Prevent invalidating wrong MR

Shun Hao (3):
net/mlx5: Introduce indirect-sw-encap ICM properties
RDMA/mlx5: Support handling of SW encap ICM area
net/mlx5: Manage ICM type of SW encap

Supriti Singh (2):
RDMA/rtrs-clt: Use %pe to print errors
RDMA/rtrs: Use %pe to print errors

drivers/infiniband/hw/bnxt_re/bnxt_re.h | 3 +
drivers/infiniband/hw/bnxt_re/hw_counters.c | 4 +-
drivers/infiniband/hw/bnxt_re/ib_verbs.c | 233 +++++++++++++++++++---
drivers/infiniband/hw/bnxt_re/ib_verbs.h | 10 +
drivers/infiniband/hw/bnxt_re/main.c | 47 +++--
drivers/infiniband/hw/bnxt_re/qplib_fp.c | 215 +++++++++++++-------
drivers/infiniband/hw/bnxt_re/qplib_fp.h | 35 +++-
drivers/infiniband/hw/bnxt_re/qplib_rcfw.c | 21 +-
drivers/infiniband/hw/bnxt_re/qplib_rcfw.h | 4 +-
drivers/infiniband/hw/bnxt_re/qplib_res.c | 4 +-
drivers/infiniband/hw/bnxt_re/qplib_res.h | 117 ++++++++---
drivers/infiniband/hw/bnxt_re/qplib_sp.c | 11 +-
drivers/infiniband/hw/bnxt_re/roce_hsi.h | 67 ++++++-
drivers/infiniband/hw/efa/efa.h | 12 +-
drivers/infiniband/hw/efa/efa_admin_cmds_defs.h | 33 ++-
drivers/infiniband/hw/efa/efa_com_cmd.c | 11 +-
drivers/infiniband/hw/efa/efa_com_cmd.h | 12 +-
drivers/infiniband/hw/efa/efa_main.c | 7 +-
drivers/infiniband/hw/efa/efa_verbs.c | 71 ++++++-
drivers/infiniband/hw/erdma/erdma.h | 2 +
drivers/infiniband/hw/erdma/erdma_hw.h | 39 ++++
drivers/infiniband/hw/erdma/erdma_main.c | 26 ++-
drivers/infiniband/hw/erdma/erdma_verbs.c | 90 +++++++++
drivers/infiniband/hw/erdma/erdma_verbs.h | 4 +
drivers/infiniband/hw/hfi1/user_exp_rcv.c | 4 +-
drivers/infiniband/hw/hfi1/user_sdma.c | 4 +-
drivers/infiniband/hw/hns/Makefile | 3 +-
drivers/infiniband/hw/hns/hns_roce_ah.c | 13 +-
drivers/infiniband/hw/hns/hns_roce_cmd.c | 19 +-
drivers/infiniband/hw/hns/hns_roce_cq.c | 17 +-
drivers/infiniband/hw/hns/hns_roce_debugfs.c | 110 ++++++++++
drivers/infiniband/hw/hns/hns_roce_debugfs.h | 33 +++
drivers/infiniband/hw/hns/hns_roce_device.h | 26 +++
drivers/infiniband/hw/hns/hns_roce_hw_v2.c | 71 +++++--
drivers/infiniband/hw/hns/hns_roce_main.c | 48 ++++-
drivers/infiniband/hw/hns/hns_roce_mr.c | 28 ++-
drivers/infiniband/hw/hns/hns_roce_pd.c | 12 +-
drivers/infiniband/hw/hns/hns_roce_qp.c | 8 +-
drivers/infiniband/hw/hns/hns_roce_srq.c | 6 +-
drivers/infiniband/hw/irdma/utils.c | 11 +-
drivers/infiniband/hw/mana/cq.c | 34 +++-
drivers/infiniband/hw/mana/device.c | 31 ++-
drivers/infiniband/hw/mana/main.c | 69 +++++--
drivers/infiniband/hw/mana/mana_ib.h | 53 +++++
drivers/infiniband/hw/mana/qp.c | 91 +++++++--
drivers/infiniband/hw/mlx5/dm.c | 5 +
drivers/infiniband/hw/mlx5/main.c | 24 +++
drivers/infiniband/hw/mlx5/mr.c | 1 +
drivers/infiniband/hw/mthca/mthca_cmd.c | 4 +-
drivers/infiniband/hw/mthca/mthca_main.c | 2 +-
drivers/infiniband/sw/siw/siw.h | 14 +-
drivers/infiniband/sw/siw/siw_cm.c | 145 ++++++--------
drivers/infiniband/sw/siw/siw_main.c | 30 ++-
drivers/infiniband/sw/siw/siw_mem.c | 121 +++++------
drivers/infiniband/sw/siw/siw_mem.h | 5 +-
drivers/infiniband/sw/siw/siw_qp.c | 2 +-
drivers/infiniband/sw/siw/siw_qp_rx.c | 84 +++-----
drivers/infiniband/sw/siw/siw_qp_tx.c | 51 ++---
drivers/infiniband/sw/siw/siw_verbs.c | 52 ++---
drivers/infiniband/ulp/ipoib/ipoib.h | 4 +
drivers/infiniband/ulp/ipoib/ipoib_ib.c | 26 ++-
drivers/infiniband/ulp/ipoib/ipoib_main.c | 33 ++-
drivers/infiniband/ulp/ipoib/ipoib_multicast.c | 7 +-
drivers/infiniband/ulp/iser/iscsi_iser.h | 7 +-
drivers/infiniband/ulp/iser/iser_initiator.c | 5 +-
drivers/infiniband/ulp/iser/iser_memory.c | 8 +-
drivers/infiniband/ulp/iser/iser_verbs.c | 1 -
drivers/infiniband/ulp/rtrs/rtrs-clt.c | 12 +-
drivers/infiniband/ulp/rtrs/rtrs.c | 4 +-
drivers/net/ethernet/mellanox/mlx5/core/eswitch.h | 7 -
drivers/net/ethernet/mellanox/mlx5/core/lib/dm.c | 38 +++-
drivers/net/ethernet/microsoft/mana/gdma_main.c | 5 +
include/linux/mlx5/driver.h | 1 +
include/linux/mlx5/eswitch.h | 8 +
include/linux/mlx5/mlx5_ifc.h | 9 +-
include/net/mana/gdma.h | 5 +
include/uapi/rdma/bnxt_re-abi.h | 41 ++++
include/uapi/rdma/efa-abi.h | 21 +-
include/uapi/rdma/hns-abi.h | 5 +
include/uapi/rdma/mlx5-abi.h | 2 +
include/uapi/rdma/mlx5_user_ioctl_verbs.h | 1 +
81 files changed, 1921 insertions(+), 638 deletions(-)
create mode 100644 drivers/infiniband/hw/hns/hns_roce_debugfs.c
create mode 100644 drivers/infiniband/hw/hns/hns_roce_debugfs.h

Attachment: signature.asc
Description: PGP signature