[GIT PULL] Please pull RDMA subsystem changes

From: Jason Gunthorpe
Date: Thu Jan 13 2022 - 13:53:19 EST


Hi Linus,

These are the proposed RDMA patches for 5.17.

Another small cycle. Mostly cleanups and bug fixes, quite a bit
assisted from bots. There are a few new syzkaller splats that haven't
been solved yet but they should get into the rcs in a few weeks, I
think.

There was a small merge conflict with the rdma RC tree, I fixed it up
in a usual v5.16 merge.

Thanks,
Jason

The following changes since commit df0cc57e057f18e44dac8e6c18aba47ab53202f9:

Linux 5.16 (2022-01-09 14:55:34 -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 c0fe82baaeb2719f910359684c0817057f79a84a:

Merge tag 'v5.16' into rdma.git for-next (2022-01-13 13:21:03 -0400)

----------------------------------------------------------------
RDMA v5.17 merge window pull request

Substantially all bug fixes and cleanups:

- Update drivers to use common helpers for GUIDs, pkeys, bitmaps,
memset_startat, and others

- General code cleanups from bots

- Simplify some of the rxe pool code in preparation for a larger rework

- Clean out old stuff from hns, including all support for hip06 devices

- Fix a bug where GID table entries could be missed if the table had holes
in it

- Rename paths and sessions in rtrs for better understandability

- Consolidate the roce source port selection code

- NDR speed support in mlx5

----------------------------------------------------------------
Avihai Horon (3):
RDMA/core: Modify rdma_query_gid() to return accurate error codes
RDMA/core: Let ib_find_gid() continue search even after empty entry
RDMA/cma: Let cma_resolve_ib_dev() continue search even after empty entry

Bob Pearson (6):
RDMA/rxe: Replace irqsave locks with bh locks
RDMA/rxe: Cleanup rxe_pool_entry
RDMA/rxe: Copy setup parameters into rxe_pool
RDMA/rxe: Save object pointer in pool element
RDMA/rxe: Remove #include "rxe_loc.h" from rxe_pool.c
RDMA/rxe: Remove some #defines from rxe_pool.h

Changcheng Deng (1):
RDMA/bnxt_re: Remove unneeded variable

Chengchang Tang (1):
RDMA/hns: Remove support for HIP06

Chengguang Xu (1):
RDMA/rxe: Fix a typo in opcode name

Christophe JAILLET (16):
RDMA/bnxt_re: Scan the whole bitmap when checking if "disabling RCFW with pending cmd-bit"
IB/mthca: Use bitmap_zalloc() when applicable
IB/mthca: Use bitmap_set() when applicable
IB/mthca: Use non-atomic bitmap functions when possible in 'mthca_allocator.c'
IB/mthca: Use non-atomic bitmap functions when possible in 'mthca_mr.c'
RDMA/cxgb4: Use bitmap_zalloc() when applicable
RDMA/cxgb4: Use bitmap_set() when applicable
RDMA/cxgb4: Use non-atomic bitmap functions when possible
RDMA/ocrdma: Use bitmap_zalloc() when applicable
RDMA/ocrdma: Simplify code in 'ocrdma_search_mmap()'
RDMA/mlx4: Use bitmap_alloc() when applicable
IB/hfi1: Use bitmap_zalloc() when applicable
RDMA/pvrdma: Use bitmap_zalloc() when applicable
RDMA/pvrdma: Use non-atomic bitmap functions when possible
RDMA/bnxt_re: Use bitmap_zalloc() when applicable
RDMA/irdma: Fix the type used to declare a bitmap

Colin Ian King (1):
IB/core: Remove redundant pointer mm

Dan Carpenter (1):
RDMA/usnic: Clean up usnic_ib_alloc_pd()

Dust Li (1):
RDMA/mlx5: Print wc status on CQE error and dump needed

Greg Kroah-Hartman (1):
RDMA: Use default_groups in kobj_type

Håkon Bugge (1):
RDMA/cma: Remove open coding of overflow checking for private_data_len

Jack Wang (1):
RDMA/rtrs-clt: Fix the initial value of min_latency

Jason Gunthorpe (3):
Merge tag 'v5.16-rc5' into rdma.git for-next
Merge branch 'mlx5-next' of git://git.kernel.org/pub/scm/linux/kernel/git/mellanox/linux
Merge tag 'v5.16' into rdma.git for-next

Jiapeng Chong (1):
RDMA/siw: Use max() instead of doing it manually

Kamal Heib (9):
RDMA/irdma: Use helper function to set GUIDs
RDMA/ocrdma: Use helper function to set GUIDs
RDMA/hns: Validate the pkey index
RDMA/cxgb4: Use helper function to set GUIDs
RDMA/siw: Use helper function to set sys_image_guid
RDMA/bnxt_re: Remove dynamic pkey table
RDMA/bnxt_re: Fix endianness warning for req.pkey
RDMA/qedr: Fix reporting max_{send/recv}_wr attrs
RDMA/cxgb4: Set queue pair state when being queried

Kees Cook (3):
RDMA/mlx5: Use memset_after() to zero struct mlx5_ib_mr
iw_cxgb4: Use memset_startat() for cpl_t5_pass_accept_rpl
IB/mthca: Use memset_startat() for clearing mpt_entry

Leon Romanovsky (2):
RDMA/mad: Delete duplicated init_query_mad functions
RDMA/rxe: Delete deprecated module parameters interface

Li Zhijian (1):
RDMA/rxe: Fix indentations and operators sytle

Maher Sanalla (1):
IB/mlx5: Expose NDR speed through MAD

Max Gurtovoy (5):
IB/iser: Remove deprecated pi_guard module param
IB/iser: Rename ib_ret local variable
IB/iser: Don't suppress send completions
IB/iser: Remove un-needed casting to/from void pointer
IB/iser: Align coding style across driver

Minghao Chi (2):
RDMA/ocrdma: Remove unneeded variable
RDMA/rxe: Remove redundant err variable

Qinghua Jin (1):
IB/qib: Fix typos

Sergey Gorenko (1):
IB/iser: Fix RNR errors

Vaishali Thakkar (5):
RDMA/rtrs: Rename rtrs_sess to rtrs_path
RDMA/rtrs-srv: Rename rtrs_srv_sess to rtrs_srv_path
RDMA/rtrs-clt: Rename rtrs_clt_sess to rtrs_clt_path
RDMA/rtrs-srv: Rename rtrs_srv to rtrs_srv_sess
RDMA/rtrs-clt: Rename rtrs_clt to rtrs_clt_sess

Wenpeng Liang (1):
RDMA/hns: Modify the hop num of HIP09 EQ to 1

Xinhao Liu (6):
RDMA/hns: Correct the hex print format
RDMA/hns: Correct the print format to be consistent with the variable type
RDMA/hns: Replace tab with space in the right-side comments
RDMA/hns: Correct the type of variables participating in the shift operation
RDMA/hns: Correctly initialize the members of Array[][]
RDMA/hns: Remove magic number

Yixing Liu (3):
RDMA/hns: Remove macros that are no longer used
RDMA/hns: Modify the mapping attribute of doorbell to device
RDMA/hns: Support direct wqe of userspace

Zhu Yanjun (8):
RDMA/uverbs: Remove the unnecessary assignment
RDMA/rxe: Remove the unnecessary variable
RDMA/rxe: Remove the unused xmit_errors member
RDMA/core: Calculate UDP source port based on flow label or lqpn/rqpn
RDMA/hns: Replace get_udp_sport with rdma_get_udp_sport
RDMA/irdma: Make the source udp port vary
RDMA/rxe: Use the standard method to produce udp source port
RDMA/irdma: Remove the redundant return

drivers/block/rnbd/rnbd-clt.c | 4 +-
drivers/block/rnbd/rnbd-clt.h | 2 +-
drivers/block/rnbd/rnbd-srv.c | 16 +-
drivers/block/rnbd/rnbd-srv.h | 2 +-
drivers/infiniband/core/cache.c | 12 +-
drivers/infiniband/core/cma.c | 18 +-
drivers/infiniband/core/device.c | 3 +-
drivers/infiniband/core/sysfs.c | 3 +-
drivers/infiniband/core/umem_odp.c | 3 +-
drivers/infiniband/core/uverbs_cmd.c | 1 -
drivers/infiniband/hw/bnxt_re/ib_verbs.c | 9 +-
drivers/infiniband/hw/bnxt_re/main.c | 3 +-
drivers/infiniband/hw/bnxt_re/qplib_fp.c | 11 +-
drivers/infiniband/hw/bnxt_re/qplib_rcfw.c | 12 +-
drivers/infiniband/hw/bnxt_re/qplib_rcfw.h | 1 -
drivers/infiniband/hw/bnxt_re/qplib_res.c | 50 -
drivers/infiniband/hw/bnxt_re/qplib_res.h | 7 -
drivers/infiniband/hw/bnxt_re/qplib_sp.c | 99 +-
drivers/infiniband/hw/bnxt_re/qplib_sp.h | 9 -
drivers/infiniband/hw/cxgb4/cm.c | 5 +-
drivers/infiniband/hw/cxgb4/id_table.c | 17 +-
drivers/infiniband/hw/cxgb4/provider.c | 8 +-
drivers/infiniband/hw/cxgb4/qp.c | 1 +
drivers/infiniband/hw/hfi1/user_sdma.c | 8 +-
drivers/infiniband/hw/hns/Kconfig | 17 +-
drivers/infiniband/hw/hns/Makefile | 5 -
drivers/infiniband/hw/hns/hns_roce_ah.c | 5 +-
drivers/infiniband/hw/hns/hns_roce_alloc.c | 3 +-
drivers/infiniband/hw/hns/hns_roce_cmd.c | 11 +-
drivers/infiniband/hw/hns/hns_roce_common.h | 202 -
drivers/infiniband/hw/hns/hns_roce_cq.c | 13 -
drivers/infiniband/hw/hns/hns_roce_db.c | 1 -
drivers/infiniband/hw/hns/hns_roce_device.h | 108 +-
drivers/infiniband/hw/hns/hns_roce_hem.c | 1 -
drivers/infiniband/hw/hns/hns_roce_hw_v1.c | 4675 --------------------
drivers/infiniband/hw/hns/hns_roce_hw_v1.h | 1147 -----
drivers/infiniband/hw/hns/hns_roce_hw_v2.c | 49 +-
drivers/infiniband/hw/hns/hns_roce_hw_v2.h | 22 +-
drivers/infiniband/hw/hns/hns_roce_main.c | 85 +-
drivers/infiniband/hw/hns/hns_roce_mr.c | 32 +-
drivers/infiniband/hw/hns/hns_roce_pd.c | 17 +-
drivers/infiniband/hw/hns/hns_roce_qp.c | 93 +-
drivers/infiniband/hw/irdma/i40iw_if.c | 2 +-
drivers/infiniband/hw/irdma/pble.h | 2 +-
drivers/infiniband/hw/irdma/verbs.c | 31 +-
drivers/infiniband/hw/mlx4/main.c | 34 +-
drivers/infiniband/hw/mlx5/cq.c | 5 +-
drivers/infiniband/hw/mlx5/mad.c | 23 +-
drivers/infiniband/hw/mlx5/mlx5_ib.h | 12 +-
drivers/infiniband/hw/mthca/mthca_allocator.c | 15 +-
drivers/infiniband/hw/mthca/mthca_mr.c | 25 +-
drivers/infiniband/hw/mthca/mthca_provider.c | 20 +-
drivers/infiniband/hw/ocrdma/ocrdma_hw.c | 16 +-
drivers/infiniband/hw/ocrdma/ocrdma_main.c | 17 +-
drivers/infiniband/hw/ocrdma/ocrdma_verbs.c | 18 +-
drivers/infiniband/hw/ocrdma/ocrdma_verbs.h | 1 -
drivers/infiniband/hw/qedr/verbs.c | 2 +
drivers/infiniband/hw/qib/qib_iba6120.c | 2 +-
drivers/infiniband/hw/qib/qib_iba7220.c | 2 +-
drivers/infiniband/hw/qib/qib_iba7322.c | 2 +-
drivers/infiniband/hw/usnic/usnic_ib_sysfs.c | 3 +-
drivers/infiniband/hw/usnic/usnic_ib_verbs.c | 8 +-
drivers/infiniband/hw/vmw_pvrdma/pvrdma_doorbell.c | 10 +-
drivers/infiniband/sw/rxe/Makefile | 1 -
drivers/infiniband/sw/rxe/rxe.c | 4 -
drivers/infiniband/sw/rxe/rxe.h | 2 -
drivers/infiniband/sw/rxe/rxe_comp.c | 8 +-
drivers/infiniband/sw/rxe/rxe_cq.c | 24 +-
drivers/infiniband/sw/rxe/rxe_loc.h | 10 +-
drivers/infiniband/sw/rxe/rxe_mcast.c | 11 +-
drivers/infiniband/sw/rxe/rxe_mr.c | 6 +-
drivers/infiniband/sw/rxe/rxe_mw.c | 21 +-
drivers/infiniband/sw/rxe/rxe_net.c | 9 +-
drivers/infiniband/sw/rxe/rxe_opcode.c | 739 ++--
drivers/infiniband/sw/rxe/rxe_pool.c | 177 +-
drivers/infiniband/sw/rxe/rxe_pool.h | 54 +-
drivers/infiniband/sw/rxe/rxe_qp.c | 6 +-
drivers/infiniband/sw/rxe/rxe_queue.c | 9 +-
drivers/infiniband/sw/rxe/rxe_req.c | 16 +-
drivers/infiniband/sw/rxe/rxe_srq.c | 2 +-
drivers/infiniband/sw/rxe/rxe_sysfs.c | 119 -
drivers/infiniband/sw/rxe/rxe_task.c | 18 +-
drivers/infiniband/sw/rxe/rxe_verbs.c | 34 +-
drivers/infiniband/sw/rxe/rxe_verbs.h | 24 +-
drivers/infiniband/sw/siw/siw_verbs.c | 6 +-
drivers/infiniband/ulp/iser/iscsi_iser.c | 76 +-
drivers/infiniband/ulp/iser/iscsi_iser.h | 23 +-
drivers/infiniband/ulp/iser/iser_initiator.c | 106 +-
drivers/infiniband/ulp/iser/iser_memory.c | 58 +-
drivers/infiniband/ulp/iser/iser_verbs.c | 138 +-
drivers/infiniband/ulp/rtrs/rtrs-clt-stats.c | 8 +-
drivers/infiniband/ulp/rtrs/rtrs-clt-sysfs.c | 145 +-
drivers/infiniband/ulp/rtrs/rtrs-clt.c | 1087 ++---
drivers/infiniband/ulp/rtrs/rtrs-clt.h | 41 +-
drivers/infiniband/ulp/rtrs/rtrs-pri.h | 18 +-
drivers/infiniband/ulp/rtrs/rtrs-srv-sysfs.c | 121 +-
drivers/infiniband/ulp/rtrs/rtrs-srv.c | 680 +--
drivers/infiniband/ulp/rtrs/rtrs-srv.h | 16 +-
drivers/infiniband/ulp/rtrs/rtrs.c | 98 +-
drivers/infiniband/ulp/rtrs/rtrs.h | 34 +-
drivers/net/ethernet/chelsio/cxgb4/t4_msg.h | 2 +-
include/rdma/ib_mad.h | 1 +
include/rdma/ib_smi.h | 12 +-
include/rdma/ib_verbs.h | 17 +
include/uapi/rdma/hns-abi.h | 2 +
105 files changed, 2229 insertions(+), 8794 deletions(-)
(diffstat from tag for-linus-merged)

Attachment: signature.asc
Description: PGP signature