Hi Linus, There is a small conflict with netdev in the shared ifc file - take both and keep the list sorted: @@@ -313,7 -315,7 +315,8 @@@ enum MLX5_CMD_OP_MODIFY_VHCA_STATE = 0xb0e, MLX5_CMD_OP_SYNC_CRYPTO = 0xb12, MLX5_CMD_OP_ALLOW_OTHER_VHCA_ACCESS = 0xb16, + MLX5_CMD_OP_GENERATE_WQE = 0xb17, + MLX5_CMD_OPCODE_QUERY_VUID = 0xb22, MLX5_CMD_OP_MAX }; Nothing especially stood out to me here. The new multipath PCI feature is a sign of things to come, I think we will see more of this in the next 10 years. Broadcom and HNS continue to update their drivers for their new HW generations. The tag for-linus-merged with my merge resolution to your tree is also available to pull. Apologies for the delay, LPC travel was a bit troublesome this year. Thanks, Jason The following changes since commit 5be63fc19fcaa4c236b307420483578a56986a37: Linux 6.11-rc5 (2024-08-25 19:07:11 +1200) 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 70920941923316b760bc7a804eb3d49a126d8712: RDMA/bnxt_re: Remove the unused variable en_dev (2024-09-22 16:53:46 +0300) ---------------------------------------------------------------- RDMA v6.12 merge window Usual collection of small improvements and fixes: - Bug fixes and minor improvments in cxgb4, siw, mlx5, rxe, efa, rts, hfi, erdma, hns, irdma - Code cleanups/typos/etc. Tidy alloc_ordered_workqueue() calls - Multipath PCI for mlx5 - Variable size work queue, SRQ changes, and relaxed ordering for new bnxt HW - New ODP fault resolution FW protocol in mlx5 - New "rdma monitor" netlink mechanism ---------------------------------------------------------------- Anumula Murali Mohan Reddy (1): RDMA/cxgb4: use dma_mmap_coherent() for mapping non-contiguous memory Chandramohan Akula (4): RDMA/bnxt_re: Refactor the BNXT_RE_METHOD_GET_TOGGLE_MEM method RDMA/bnxt_re: Share a page to expose per SRQ info with userspace RDMA/bnxt_re: Change aux driver data to en_info to hold more information RDMA/bnxt_re: Use the aux device for L2 ULP callbacks Cheng Xu (3): RDMA/erdma: Refactor the initialization and destruction of EQ RDMA/erdma: Add disassociate ucontext support RDMA/erdma: Return QP state in erdma_query_qp Chengchang Tang (2): RDMA/hns: Fix spin_unlock_irqrestore() called with IRQs enabled RDMA/hns: Fix 1bit-ECC recovery address in non-4K OS Chiara Meiohas (6): RDMA/nldev: Enhance netlink message parsing and validation RDMA/mlx5: Initialize phys_port_cnt earlier in RDMA device creation RDMA/device: Remove optimization in ib_device_get_netdev() RDMA/mlx5: Use IB set_netdev and get_netdev functions RDMA/nldev: Add support for RDMA monitoring RDMA/nldev: Expose whether RDMA monitoring is supported Chris Mi (1): IB/mlx5: Fix UMR pd cleanup on error flow of driver init Grzegorz Prajsner (1): RDMA/rtrs: Register ib event handler Hongguang Gao (1): RDMA/bnxt_re: Get the toggle bits from SRQ events Jack Wang (7): RDMA/rtrs-clt: Fix need_inv setting in error case RDMA/rtrs-clt: Rate limit errors in IO path RDMA/rtrs: Reset hb_missed_cnt after receiving other traffic from peer RDMA/rtrs-clt: Reuse need_inval from mr RDMA/rtrs-clt: Print request type for errors RDMA/rtrs-clt: Do local invalidate after write io completion RDMA/rtrs-clt: Remove an extra space Jason Gunthorpe (1): Merge branch 'bnxt_re_variable_wqes' into rdma.git for-next Jiapeng Chong (1): RDMA/bnxt_re: Remove the unused variable en_dev Jinjie Ruan (4): RDMA/qib: Simplify an alloc_ordered_workqueue() invocation RDMA/mad: Simplify an alloc_ordered_workqueue() invocation RDMA/mlx4: Simplify an alloc_ordered_workqueue() invocation RDMA/mlx4: Simplify an alloc_ordered_workqueue() invocation Junxian Huang (5): RDMA/hns: Don't modify rq next block addr in HIP09 QPC RDMA/hns: Fix VF triggering PF reset in abnormal interrupt handler RDMA/hns: Optimize hem allocation performance RDMA/hns: Fix restricted __le16 degrades to integer issue RDMA/hns: Fix ah error counter in sw stat not increasing Kalesh AP (4): RDMA/bnxt_re: Update HW interface headers RDMA/bnxt_re: Rename a variable RDMA/bnxt_re: Avoid an extra hwrm per MR creation RDMA/bnxt_re: Add support for MR Relaxed Ordering Leon Romanovsky (1): Introducing Multi-Path DMA Support for mlx5 RDMA Driver Long Li (2): RDMA/mana_ib: use the correct page table index based on hardware page size RDMA/mana_ib: use the correct page size for mapping user-mode doorbell page Maher Sanalla (1): RDMA/mlx5: Enable ATS when allocating kernel MRs Mark Bloch (3): RDMA/mlx5: Expose vhca id for all ports in multiport mode RDMA/mlx5: Check RoCE LAG status before getting netdev RDMA/mlx5: Obtain upper net device only when needed Md Haris Iqbal (3): RDMA/rtrs: For HB error add additional clt/srv specific logging RDMA/rtrs-clt: Reset cid to con_num - 1 to stay in bounds RDMA/rtrs-srv: Avoid null pointer deref during path establishment Michael Guralnik (12): RDMA/mlx5: Drop redundant work canceling from clean_keys() RDMA/mlx5: Fix counter update on MR cache mkey creation RDMA/mlx5: Limit usage of over-sized mkeys from the MR cache RDMA/mlx5: Fix MR cache temp entries cleanup net/mlx5: Expand mkey page size to support 6 bits net/mlx5: Expose HW bits for Memory scheme ODP RDMA/mlx5: Add new ODP memory scheme eqe format RDMA/mlx5: Enforce umem boundaries for explicit ODP page faults RDMA/mlx5: Split ODP mkey search logic RDMA/mlx5: Add handling for memory scheme page fault events RDMA/mlx5: Add implicit MR handling to ODP memory scheme net/mlx5: Handle memory scheme ODP capabilities Mikhail Lobanov (1): RDMA/cxgb4: Added NULL check for lookup_atid Nathan Chancellor (1): RDMA/nldev: Add missing break in rdma_nl_notify_err_msg() Patrisious Haddad (1): IB/core: Fix ib_cache_setup_one error flow cleanup Saravanan Vajravel (1): RDMA/mad: Improve handling of timed out WRs of mad agent Selvin Xavier (9): RDMA/bnxt_re: Add support for Variable WQE in Genp7 adapters RDMA/bnxt_re: Get the WQE index from slot index while completing the WQEs RDMA/bnxt_re: Fix the table size for PSN/MSN entries RDMA/bnxt_re: Handle variable WQE support for user applications RDMA/bnxt_re: Enable variable size WQEs for user space applications RDMA/bnxt_re: Fix the compatibility flag for variable size WQE RDMA/bnxt_re: Fix the max WQE size for static WQE support RDMA/bnxt_re: Group all operations under add_device and remove_device RDMA/bnxt_re: Recover the device when FW error is detected Shen Lichuan (1): RDMA/rdmavt: Convert to use ERR_CAST() Showrya M N (1): RDMA/siw: Remove NETDEV_GOING_DOWN event handler Vitaliy Shevtsov (1): RDMA/irdma: fix error message in irdma_modify_qp_roce() Yehuda Yitschak (1): RDMA/efa: Add support for node guid Yishai Hadas (9): net/mlx5: Add IFC related stuff for data direct RDMA/mlx5: Introduce the 'data direct' driver RDMA/mlx5: Add the initialization flow to utilize the 'data direct' device RDMA/umem: Add support for creating pinned DMABUF umem with a given dma device RDMA/umem: Introduce an option to revoke DMABUF umem RDMA: Pass uverbs_attr_bundle as part of '.reg_user_mr_dmabuf' API RDMA/mlx5: Add support for DMABUF MR registrations with Data-direct RDMA/mlx5: Introduce GET_DATA_DIRECT_SYSFS_PATH ioctl RDMA/mlx5: Consider the query_vuid cap for data_direct Yue Haibing (2): RDMA/mlx5: Remove two unused declarations RDMA/cxgb4: Remove unused declarations Zhang Zekun (4): RDMA/core: Remove unused declaration rdma_resolve_ip_route() RDMA/ipoib: Remove unused declarations IB/iser: Remove unused declaration in header file IB/qib: Remove unused declarations in header file Zhu Yanjun (1): RDMA/iwcm: Fix WARNING:at_kernel/workqueue.c:#check_flush_dependency wenglianfa (2): RDMA/hns: Fix Use-After-Free of rsv_qp on HIP08 RDMA/hns: Fix the overflow risk of hem_list_calc_ba_range() zhenwei pi (3): RDMA/rxe: Use sizeof instead of hard code number RDMA/rxe: Fix misspelling of 'rmda' RDMA/rxe: Fix __bth_set_resv6a drivers/infiniband/core/cache.c | 4 +- drivers/infiniband/core/core_priv.h | 3 - drivers/infiniband/core/device.c | 48 ++- drivers/infiniband/core/iwcm.c | 2 +- drivers/infiniband/core/mad.c | 19 +- drivers/infiniband/core/netlink.c | 1 + drivers/infiniband/core/nldev.c | 187 ++++++++-- drivers/infiniband/core/umem_dmabuf.c | 66 +++- drivers/infiniband/core/uverbs_std_types_mr.c | 2 +- drivers/infiniband/hw/bnxt_re/bnxt_re.h | 23 ++ drivers/infiniband/hw/bnxt_re/ib_verbs.c | 254 ++++++++----- drivers/infiniband/hw/bnxt_re/ib_verbs.h | 20 +- drivers/infiniband/hw/bnxt_re/main.c | 213 +++++++---- drivers/infiniband/hw/bnxt_re/qplib_fp.c | 72 +++- drivers/infiniband/hw/bnxt_re/qplib_fp.h | 25 +- drivers/infiniband/hw/bnxt_re/qplib_res.h | 11 + drivers/infiniband/hw/bnxt_re/qplib_sp.c | 19 +- drivers/infiniband/hw/bnxt_re/qplib_sp.h | 11 +- drivers/infiniband/hw/bnxt_re/roce_hsi.h | 36 +- drivers/infiniband/hw/cxgb4/cm.c | 5 + drivers/infiniband/hw/cxgb4/cq.c | 8 +- drivers/infiniband/hw/cxgb4/iw_cxgb4.h | 40 ++- drivers/infiniband/hw/cxgb4/provider.c | 67 ++-- drivers/infiniband/hw/cxgb4/qp.c | 32 +- drivers/infiniband/hw/efa/efa.h | 2 +- drivers/infiniband/hw/efa/efa_admin_cmds_defs.h | 3 + drivers/infiniband/hw/efa/efa_com_cmd.c | 1 + drivers/infiniband/hw/efa/efa_com_cmd.h | 1 + drivers/infiniband/hw/efa/efa_main.c | 1 + drivers/infiniband/hw/efa/efa_verbs.c | 4 +- drivers/infiniband/hw/erdma/erdma.h | 3 +- drivers/infiniband/hw/erdma/erdma_cmdq.c | 26 +- drivers/infiniband/hw/erdma/erdma_eq.c | 87 +++-- drivers/infiniband/hw/erdma/erdma_main.c | 5 +- drivers/infiniband/hw/erdma/erdma_verbs.c | 29 +- drivers/infiniband/hw/erdma/erdma_verbs.h | 1 + drivers/infiniband/hw/hns/hns_roce_ah.c | 14 +- drivers/infiniband/hw/hns/hns_roce_hem.c | 22 +- drivers/infiniband/hw/hns/hns_roce_hw_v2.c | 33 +- drivers/infiniband/hw/hns/hns_roce_qp.c | 16 +- drivers/infiniband/hw/irdma/verbs.c | 4 +- drivers/infiniband/hw/mana/main.c | 8 +- drivers/infiniband/hw/mlx4/alias_GUID.c | 4 +- drivers/infiniband/hw/mlx4/mad.c | 10 +- drivers/infiniband/hw/mlx5/Makefile | 1 + drivers/infiniband/hw/mlx5/cmd.c | 21 ++ drivers/infiniband/hw/mlx5/cmd.h | 2 + drivers/infiniband/hw/mlx5/data_direct.c | 227 ++++++++++++ drivers/infiniband/hw/mlx5/data_direct.h | 23 ++ drivers/infiniband/hw/mlx5/ib_rep.c | 22 +- drivers/infiniband/hw/mlx5/main.c | 324 ++++++++++++++--- drivers/infiniband/hw/mlx5/mlx5_ib.h | 60 +++- drivers/infiniband/hw/mlx5/mr.c | 418 ++++++++++++++++------ drivers/infiniband/hw/mlx5/odp.c | 405 ++++++++++++++++----- drivers/infiniband/hw/mlx5/std_types.c | 76 +++- drivers/infiniband/hw/mlx5/umr.c | 96 +++-- drivers/infiniband/hw/mlx5/umr.h | 1 + drivers/infiniband/hw/qib/qib_init.c | 9 +- drivers/infiniband/hw/qib/qib_verbs.h | 4 - drivers/infiniband/sw/rdmavt/mr.c | 6 +- drivers/infiniband/sw/rxe/rxe_hdr.h | 2 +- drivers/infiniband/sw/rxe/rxe_resp.c | 4 +- drivers/infiniband/sw/siw/siw.h | 2 - drivers/infiniband/sw/siw/siw_main.c | 37 -- drivers/infiniband/ulp/ipoib/ipoib.h | 4 - drivers/infiniband/ulp/iser/iscsi_iser.h | 4 - drivers/infiniband/ulp/rtrs/rtrs-clt.c | 92 +++-- drivers/infiniband/ulp/rtrs/rtrs-clt.h | 3 +- drivers/infiniband/ulp/rtrs/rtrs-pri.h | 2 + drivers/infiniband/ulp/rtrs/rtrs-srv.c | 51 ++- drivers/infiniband/ulp/rtrs/rtrs-srv.h | 2 + drivers/net/ethernet/mellanox/mlx5/core/lag/lag.c | 76 ++-- drivers/net/ethernet/mellanox/mlx5/core/main.c | 54 +-- include/linux/mlx5/device.h | 31 +- include/linux/mlx5/driver.h | 2 +- include/linux/mlx5/mlx5_ifc.h | 113 +++++- include/rdma/ib_umem.h | 18 + include/rdma/ib_verbs.h | 4 +- include/rdma/rdma_netlink.h | 12 + include/uapi/rdma/bnxt_re-abi.h | 13 + include/uapi/rdma/mlx5_user_ioctl_cmds.h | 9 + include/uapi/rdma/mlx5_user_ioctl_verbs.h | 4 + include/uapi/rdma/rdma_netlink.h | 16 + 83 files changed, 2796 insertions(+), 896 deletions(-) (diffstat from tag for-linus-merged)
Attachment:
signature.asc
Description: PGP signature