Hi Linus, Quite a small cycle this time, even with the rc8. I suppose everyone went to sleep over xmas. Thanks, Jason The following changes since commit 22551e77e5507a06114c0af2b92bbf1a66ec33c5: net/mlx5: Configure IPsec steering for egress RoCEv2 traffic (2023-02-15 11:30:07 +0200) 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 66fb1d5df6ace316a4a6e2c31e13fc123ea2b644: IB/mlx5: Extend debug control for CC parameters (2023-02-19 11:50:59 +0200) ---------------------------------------------------------------- v6.3 RDMA pull request Small cycle this time: - Minor driver updates for hfi1, cxgb4, erdma, hns, irdma, mlx5, siw, mana - inline CQE support for hns - Have mlx5 display device error codes - Pinned DMABUF support for irdma - Continued rxe cleanups, particularly converting the MRs to use xarray - Improvements to what can be cached in the mlx5 mkey cache ---------------------------------------------------------------- Aharon Landau (2): RDMA/mlx5: Don't keep umrable 'page_shift' in cache entries RDMA/mlx5: Remove implicit ODP cache entry Alexey Kodanev (1): RDMA/cxgb4: remove unnecessary NULL check in __c4iw_poll_cq_one() Bernard Metzler (1): RDMA/siw: Fix user page pinning accounting Bob Pearson (9): RDMA/rxe: Cleanup mr_check_range RDMA/rxe: Move rxe_map_mr_sg to rxe_mr.c RDMA-rxe: Isolate mr code from atomic_reply() RDMA-rxe: Isolate mr code from atomic_write_reply() RDMA/rxe: Cleanup page variables in rxe_mr.c RDMA/rxe: Replace rxe_map and rxe_phys_buf by xarray Subject: RDMA/rxe: Handle zero length rdma RDMA/rxe: Remove rxe_alloc() RDMA/rxe: Fix missing memory barriers in rxe_queue.h Dan Carpenter (2): RDMA/mlx5: Check reg_create() create for errors iw_cxgb4: Fix potential NULL dereference in c4iw_fill_res_cm_id_entry() Dean Luick (7): IB/hfi1: Remove redundant pageidx variable IB/hfi1: Assign npages earlier IB/hfi1: Consolidate the creation of user TIDs IB/hfi1: Improve TID validity checking IB/hfi1: Split IB counter allocation IB/hfi1: Update RMT size calculation IB/hfi1: Use dma_mmap_coherent for matching buffers Deming Wang (1): RDMA/restrack: Correct spelling Edward Srouji (1): IB/mlx5: Extend debug control for CC parameters Gustavo A. R. Silva (1): RDMA/erdma: Replace zero-length arrays with flexible-array members Jason Gunthorpe (3): RDMA/umem: Remove unused 'work' member from struct ib_umem RDMA/mlx5: Use rdma_umem_for_each_dma_block() Merge mlx5-next into rdma.git for-next Kees Cook (2): RDMA/cxgb4: Replace 0-length arrays with flexible arrays RDMA/cma: Distinguish between sockaddr_in and sockaddr_in6 by size Leon Romanovsky (3): Merge branch 'mlx5-next' into HEAD RDMA/mlx5: Fix MR cache debugfs error in IB representors mode RDMA/mlx5: Remove impossible check of mkey cache cleanup failure Long Li (1): RDMA/mana_ib: Fix a bug when the PF indicates more entries for registering memory on first packet Luoyouming (3): RDMA/hns: Remove rq inline in kernel RDMA/hns: Add compatibility handling for only support userspace rq inline RDMA/hns: Support cqe inline in user space Mark Zhang (2): RDMA/cma: Refactor the inbound/outbound path records process flow RDMA/mlx: Calling qp event handler in workqueue context Miaoqian Lin (3): RDMA/hfi1: Fix doc for hfi1_free_ctxt RDMA/erdma: Fix refcount leak in erdma_mmap RDMA/hns: Fix refcount leak in hns_roce_mmap Michael Guralnik (4): RDMA/mlx5: Change the cache structure to an RB-tree RDMA/mlx5: Introduce mlx5r_cache_rb_key RDMA/mlx5: Cache all user cacheable mkeys on dereg MR flow RDMA/mlx5: Add work to remove temporary entries from the cache Mustafa Ismail (1): RDMA/irdma: Cap MSIX used to online CPUs + 1 Nikita Zhandarovich (2): RDMA/cxgb4: add null-ptr-check after ip_dev_find() RDMA/cxgb4: Fix potential null-ptr-deref in pass_establish() Or Har-Toov (4): net/mlx5: Expose bits for querying special mkeys net/mlx5: Change define name for 0x100 lkey value net/mlx5e: Use query_special_contexts for mkeys RDMA/mlx5: Use query_special_contexts for mkeys Patrick Kelsey (2): IB/hfi1: Fix math bugs in hfi1_can_pin_pages() IB/hfi1: Fix sdma.h tx->num_descs off-by-one errors Patrisious Haddad (2): RDMA/core: Refactor rdma_bind_addr RDMA/mlx5: Print error syndrome in case of fatal QP errors Zhu Yanjun (6): RDMA/irdma: Remove extra ret variable in favor of existing err RDMA/irdma: Split MEM handler into irdma_reg_user_mr_type_mem RDMA/irdma: Split mr alloc and free into new functions RDMA/irdma: Split QP handler into irdma_reg_user_mr_type_qp RDMA/irdma: Split CQ handler into irdma_reg_user_mr_type_cq RDMA/irdma: Add support for dmabuf pin memory regions drivers/infiniband/core/cma.c | 300 ++++++----- drivers/infiniband/core/sa_query.c | 171 ++---- drivers/infiniband/hw/cxgb4/cm.c | 7 + drivers/infiniband/hw/cxgb4/cq.c | 2 +- drivers/infiniband/hw/cxgb4/restrack.c | 2 +- drivers/infiniband/hw/cxgb4/t4fw_ri_api.h | 26 +- drivers/infiniband/hw/erdma/erdma_hw.h | 4 +- drivers/infiniband/hw/erdma/erdma_verbs.c | 4 +- drivers/infiniband/hw/hfi1/chip.c | 59 ++- drivers/infiniband/hw/hfi1/exp_rcv.h | 5 +- drivers/infiniband/hw/hfi1/file_ops.c | 81 ++- drivers/infiniband/hw/hfi1/init.c | 2 +- drivers/infiniband/hw/hfi1/sdma.c | 4 +- drivers/infiniband/hw/hfi1/sdma.h | 15 +- drivers/infiniband/hw/hfi1/user_exp_rcv.c | 46 +- drivers/infiniband/hw/hfi1/user_pages.c | 61 ++- drivers/infiniband/hw/hfi1/verbs.c | 81 ++- drivers/infiniband/hw/hns/hns_roce_device.h | 19 +- drivers/infiniband/hw/hns/hns_roce_hw_v2.c | 109 ++-- drivers/infiniband/hw/hns/hns_roce_hw_v2.h | 3 +- drivers/infiniband/hw/hns/hns_roce_main.c | 17 +- drivers/infiniband/hw/hns/hns_roce_qp.c | 66 +-- drivers/infiniband/hw/irdma/hw.c | 2 + drivers/infiniband/hw/irdma/verbs.c | 313 +++++++---- drivers/infiniband/hw/mana/main.c | 22 +- drivers/infiniband/hw/mlx4/main.c | 8 + drivers/infiniband/hw/mlx4/mlx4_ib.h | 3 + drivers/infiniband/hw/mlx4/qp.c | 121 +++-- drivers/infiniband/hw/mlx5/cmd.c | 45 +- drivers/infiniband/hw/mlx5/cmd.h | 3 +- drivers/infiniband/hw/mlx5/cong.c | 28 +- drivers/infiniband/hw/mlx5/main.c | 24 +- drivers/infiniband/hw/mlx5/mlx5_ib.h | 51 +- drivers/infiniband/hw/mlx5/mr.c | 490 +++++++++++++---- drivers/infiniband/hw/mlx5/odp.c | 67 +-- drivers/infiniband/hw/mlx5/qp.c | 164 ++++-- drivers/infiniband/hw/mlx5/qp.h | 4 +- drivers/infiniband/hw/mlx5/qpc.c | 7 +- drivers/infiniband/hw/mlx5/srq.c | 2 +- drivers/infiniband/hw/mlx5/umr.c | 4 +- drivers/infiniband/hw/mlx5/wr.c | 2 +- drivers/infiniband/sw/rxe/rxe.h | 38 ++ drivers/infiniband/sw/rxe/rxe_loc.h | 12 +- drivers/infiniband/sw/rxe/rxe_mr.c | 606 ++++++++++++---------- drivers/infiniband/sw/rxe/rxe_pool.c | 46 -- drivers/infiniband/sw/rxe/rxe_pool.h | 3 - drivers/infiniband/sw/rxe/rxe_queue.h | 108 ++-- drivers/infiniband/sw/rxe/rxe_resp.c | 202 +++----- drivers/infiniband/sw/rxe/rxe_verbs.c | 115 ++-- drivers/infiniband/sw/rxe/rxe_verbs.h | 32 +- drivers/infiniband/sw/siw/siw_mem.c | 23 +- drivers/infiniband/ulp/ipoib/ipoib_main.c | 2 +- drivers/infiniband/ulp/srp/ib_srp.c | 2 +- drivers/net/ethernet/mellanox/mlx4/qp.c | 14 +- drivers/net/ethernet/mellanox/mlx5/core/en_main.c | 22 +- include/linux/mlx4/qp.h | 1 + include/linux/mlx5/driver.h | 1 - include/linux/mlx5/mlx5_ifc.h | 22 +- include/linux/mlx5/qp.h | 2 +- include/rdma/ib_sa.h | 2 +- include/rdma/ib_umem.h | 1 - include/rdma/ib_verbs.h | 2 +- include/rdma/rdma_cm.h | 1 - include/rdma/restrack.h | 4 +- include/uapi/rdma/hns-abi.h | 4 + 65 files changed, 2112 insertions(+), 1597 deletions(-) (diffstat from tag for-linus-merged)