[GIT PULL] Please pull RDMA subsystem changes

From: Jason Gunthorpe

Date: Thu Oct 22 2026 - 14:32:31 EST


Hi Linus,

Another merge window, another big pile of AI fixes.

There are several drivers on the list now, and a serious proposal to
support a the UltraEthernet RDMA style protocol. These are winding
their way across the Sashiko threshold and maybe we will see them in
the next couple cycles.

Thanks,
Jason

The following changes since commit 93f51579e7df248780214094418f205253383cc5:

Linux 7.3-rc4 (2026-09-20 13:48:15 -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 c3e8e9451e6f1b69f685b75e0fbf14f3d0fb2539:

RDMA/irdma: Bound in-flight CQP ops across deferred completions (2026-10-20 06:21:15 -0400)

----------------------------------------------------------------
RDMA v7.4 merge window pull request

A smaller cycle for features, still mostly AI and tool found bug fixes for
long standing issues:

- Bug fixes and minor cleanups across bnxt_re, cxgb4, EFA, ERDMA,
HFI1, HNS, ionic, iRDMA, mlx4/mlx5, rdmavt, rtrs, RXE, SIW, SRP,
isert and IPoIB. Lots of error unwind leaks, integer overflows, and
use after free during teardown from timers/work that was not
cancelled

- Core fixes for uverbs DMABUF lifetime, RMPP reassembly use after
free, multicast rb-tree corruption, restrack, and a user triggerable
NULL deref when creating a WQ without a CQ

- Prevent userspace from getting a writable mmap of the cxgb4 status
page and the mlx4 clock page

- Many rxe hardening fixes for bad user and network input, plus
netdev and tunnel socket lifetime fixes

- Peer supplied values are now validated in rtrs-clt, which is remote
triggerable

- umem now picks the DMA direction from the access flags instead of
always using DMA_BIDIRECTIONAL, so an IOMMU can stop the device from
writing to read-only memory. Several drivers were fixed to pin CQ
and queue memory as writable to go along with this

- SRQ support, firmware assigned CQ IDs and RCQ userspace support for
ionic

- RC QP improvements in MANA: MMQ creation, fixed size send WQEs and
power of two send queues. Also multi-port GSI QPs and a rework of
the UD send/receive and CQ polling paths

- Relaxed ordering MRs for EFA

- Non-contiguous kernel QP and CQ buffers for ERDMA

- Move the mlx5 data direct infrastructure from mlx5_ib to mlx5_core
so netdev can use it too. The data direct PCI driver is now named
"mlx5_dd"

- debugfs knob in hns to fix the SL used by the GSI QP, working around
a HW problem with dropped CQEs

- Selftest fixes, removal of the qib sysfs ABI docs, DT schema
conversion for hns, and MANA maintainer handover

----------------------------------------------------------------
Abhijit Gangurde (5):
RDMA/ionic: Add RCQ userspace support
net: ionic: Fetch qid allocation and SRQ capability from firmware
RDMA/ionic: Fix XArray initialization to use XArray flags
RDMA/ionic: Fix double removal of CMB mmap entries in create QP error path
RDMA/ionic: support firmware-assigned CQ IDs

Abhishek Mohapatra (1):
RDMA/bnxt_re: Use kvzalloc for QP table allocation

Amit Kumar (3):
RDMA/ionic: segregate rq related fields from ionic_qp into a new ionic_rq struct
RDMA/ionic: add Shared receive queue (SRQ) support
RDMA/ionic: implement SRQ event handling support

Ammar Ratnani (1):
RDMA/core: Force disconnect if DREP and DREQ fail

Binbin Deng (1):
RDMA/rxe: unpublish the per-net tunnel socket before

Bjoern Doebel (1):
selftests/rdma: Skip rxe_sent_rcvd_bytes when rdma_rxe is missing

Carolina Jubran (1):
IB/IPoIB: Cancel normal flush work on device stop

Cheng Xu (5):
RDMA/erdma: Unwind kernel QP initialization failures
RDMA/erdma: Support non-contiguous kernel QP buffers
RDMA/erdma: Support non-contiguous kernel CQ buffers
RDMA/erdma: Unify userspace and kernel queue buffer management
RDMA/erdma: Move kernel QP helpers after memory helpers

Chengchang Tang (2):
RDMA/hns: Fix missing CQE when UD QP use different SL
RDMA/hns: Support setting GSI QP SL via debugfs

Dairui Zhang (1):
IB/mad: fix UAF and double-free in RMPP receive reassembly

Dana Malachi (2):
RDMA/efa: Use device ABI MR permissions instead of verbs flags
RDMA/efa: Pass relaxed ordering flag to device

Deep Shah (2):
RDMA/uverbs: Fix uobject leak in DMABUF release
RDMA/uverbs: Fix DMABUF use-after-free during ufile cleanup

Dragos Tatulea (10):
RDMA/mlx5: Notify data direct users via a notifier chain on unbind
RDMA/mlx5: Add mlx5_data_direct_supported() helper
RDMA/mlx5: Make the data direct VUID query self-contained
RDMA/mlx5: Give the data direct PCI driver a proper name
RDMA/mlx5: Move and rename data direct resource functions
RDMA/mlx5: Add new registration stage for data direct users
RDMA/mlx5: Extract IB specific lock out of data direct
RDMA/mlx5: Consolidate data direct state into one object
RDMA/mlx5: Pull data_direct resource creation in init phase
mlx5: Move data direct implementation to mlx5_core

Geliang Tang (1):
RDMA/siw: drop duplicate check_app_limited in siw_tcp_sendpages

Guangshuo Li (1):
RDMA/irdma: avoid use-after-free in icrdma_remove

Haitam Lazaar (1):
RDMA/siw: Enforce IB_ACCESS_REMOTE_READ for read responses

Hemanth Selam (2):
RDMA: fix typos in comments
RDMA: fix repeated words in comments

Honggang LI (1):
RDMA/rxe: Fix out-of-range unsigned-to-signed conversion for RDMA message in 2GiB size

Hongyan Xu (2):
RDMA/hfi1: shut down the trap timer before unregistering
RDMA/hfi1: quiesce SDMA asynchronous cleanup on exit

Jacob Moroni (5):
RDMA/irdma: Fix erroneous -ENOMEM for large MR registration
RDMA/core: Clear driver_udata before destroying objects in rdma_core
RDMA/irdma: Check MR contiguity before PBLE alloc
RDMA/irdma: Fix FRWR IRDMAQPSQ_PBLADDR field population
RDMA/irdma: Fix PBLE_LEVEL_2 FRWR generation

Jeremy Bongio (1):
RDMA/irdma: Use kvzalloc for lvl2 leafmem allocation

Jiale Yao (3):
RDMA/mad: Reject receive completions shorter than GRH
RDMA/mlx4: Do not allow the user to write to the clock page
RDMA/cxgb4: Do not allow userspace to write the status page

Junxian Huang (4):
RDMA/hns: Use u32 for gid_table_len
RDMA/hns: Limit gmv_entry_num to avoid memory waste
RDMA/hns: Fix GID capacity loss in 64K system
RDMA/hns: Fix the use of uninitialized variable

Karl Mehltretter (1):
ABI: sysfs-class-infiniband: Drop the entries of the removed qib driver

Konstantin Taranov (8):
RDMA/mana_ib: Extend RC QP udata request and response
RDMA/mana_ib: MMQ creation for RC QPs
RDMA/mana_ib: fixed send wqe size support for RC QPs
RDMA/mana_ib: Optimize shadow queue bookkeeping
RDMA/mana_ib: Revise UD send posting and WQE definitions
RDMA/mana_ib: Revise UD receive posting with GDMA_WR_IB_SGL
RDMA/mana_ib: Make kernel CQ arming robust
RDMA/mana_ib: Poll UD completions and flush software error QPs

Leon Romanovsky (7):
RDMA/irdma: Preserve fast-registration IOVA on 32-bit
RDMA/irdma: Remove unused post_sq arguments
Merge remote-tracking branch 'ionic/ionic-shared' into wip/leon-for-next
mlx5: Move data direct infrastructure to mlx5_core
RDMA/core: Preserve the selected source GID on failed AH modification
RDMA/core: Free unpublished port statistics after initial-read failure
RDMA/core: Reject LAG selection when source MAC lookup fails

Li RongQing (13):
RDMA/nldev: Put the device when dellink fails
RDMA/uverbs: Make CQ handle mandatory for WQ creation
RDMA/mlx5: Print err code when create_qp fails
RDMA/core: Fix swapped list_add_tail() arguments in ib_add_sub_device()
RDMA/restrack: Don't set RESTRACK_DD mark after a failed xa_insert()
RDMA/uverbs: Drop restrack ref on ib_init_ucontext() failure in GET_CONTEXT
RDMA/core: Fix partial copy of IPv6 flow_lbl in LAG hash skb
RDMA/multicast: Fix rb-tree corruption on MGID reassignment in join_handler
RDMA/mlx5: Guard steering anchor resource destruction on create error
RDMA/mlx5: Use DEFINE_RAW_FLEX for leftovers flow attributes
RDMA/mlx5: Restore mr->pi_mr after temporary stack-local assignment
IB/isert: Don't share drop_cmd_list across concurrent connection teardowns
RDMA/mlx5: Fix CQ resize destination index mask

Liu Zhenlong (1):
RDMA/rtrs-clt: use find_next_zero_bit() for permit allocation

Long Li (1):
MAINTAINERS: hand over MANA RDMA driver to Wei Hu

Michael Margolin (1):
RDMA/efa: Use __GFP_RETRY_MAYFAIL for ring allocations

Nguyễn Văn Cao Nguyên (1):
RDMA/irdma: Do not move a fresh RoCE QP to ERROR on RESET

Nicolas Morey (1):
RDMA/rxe: Use validated num_sge in local buffer

Norbert Szetei (2):
RDMA/rxe: Reject IB_ACCESS_ON_DEMAND changes after MR creation
RDMA/rxe: Reject prefetch of a non-ODP MR

Prathamesh Deshpande (2):
RDMA/mlx5: Cancel deferred page-fault EQ work before teardown
RDMA/mlx5: Cancel software CQ notifications before teardown

Praveen Kumar Kannoju (1):
IB/mlx4: Avoid requeueing executing CM timeout work

Quanye Yang (4):
RDMA/rtrs-clt: Reject invalid queue_depth from the peer
RDMA/rtrs-clt: Don't WARN on unexpected info-response opcode
RDMA/rtrs-clt: Validate peer-supplied IO completion msg_id
RDMA/rtrs-clt: Fix recv repost to satisfy ib_drain_rq

Rob Herring (Arm) (1):
dt-bindings: infiniband: Convert hisilicon,hns-roce-v1 to DT schema

Ruizhe Zhou (2):
RDMA/hfi1: Remove obsolete 32-bit DMA mask fallback
RDMA/mlx5: Remove obsolete 32-bit DMA mask fallback

Runyu Xiao (1):
IB/hfi1: Shutdown self-rearming timers before freeing

Sang-Heon Jeon (1):
RDMA/mana_ib: Remove redundant NULL check before netdev_put()

Sasha Levin (1):
RDMA/selftests: Fix the kernel config fragment

Selvin Xavier (8):
RDMA/bnxt_re: Fix integer overflow in send payload size computation
RDMA/bnxt_re: Detect wrong sge_len passed for inline
RDMA/bnxt_re: Validate SRQ max_sge at create time
RDMA/bnxt_re: Initialize wqe.flags in bnxt_re_post_srq_recv()
RDMA/bnxt_re: Serialize dcb_wq access against async notifier
RDMA/bnxt_re: Fix the PD and DPI table size
RDMA/bnxt_re: Use bnxt_ext_stats_supported for counter count selection
RDMA/bnxt_re: Unpublish QP table before freeing it

Serhat Kumral (7):
RDMA/srpt: Fix srp_sq_size documentation
RDMA/irdma: Free IRQ when CEQ vector mapping fails
RDMA/siw: Fix length of first chunk in siw_try_1seg()
IB/rdmavt: Fix error unwind path for qp_priv_init() in rvt_create_qp()
RDMA/srp: Avoid reading uninitialized has_port on srp_parse_in() failure
RDMA/usnic: Bound buffer size to sizeof(buf) in flowinfo_read()
RDMA/mlx5: Validate priority in STEERING_ANCHOR_CREATE handler

Slavin Liu (1):
RDMA/irdma: check vport device allocation

Snehal Sanghvi (2):
RDMA/mana_ib: Enable multi-port GSI QP support for mana_ib
RDMA/mana_ib: advertise pow2 RC SQ support to user space

Sunny Tiwari (1):
RDMA/irdma: Bound in-flight CQP ops across deferred completions

Wentao Liang (4):
RDMA/cxgb4: Fix neigh reference leak in rx_pkt()
RDMA/cxgb4: Fix skb reference leak in rx_pkt()
RDMA/mlx5: Fix RQ resource reference leak in mlx5_ib_wq_event()
RDMA/siw: Fix qp use-after-free in siw_get_base_qp()

Yili Zhang (1):
RDMA/nldev: Fix NULL deref in dumps of objects abandoned by DRIVER_FAILURE

Yishai Hadas (18):
RDMA/mlx5: Use unsigned comparison in the CQ cleanup loop
RDMA/mlx4: Use unsigned comparison in the CQ cleanup loop
RDMA/mthca: Use unsigned comparison in the CQ cleanup loop
RDMA/hns: Use unsigned comparison in the CQ cleanup loop
RDMA/erdma: Pin CQ buffer writable to match device DMA write access
RDMA/hns: Pin CQ buffer writable to match device DMA write access
RDMA/vmw_pvrdma: Pin QP and SRQ rings writable to match device DMA write access
RDMA/umem: Reuse ib_umem_get_cq_buf_or_va() for VA-only CQ pinning
RDMA/umem: Support an explicit DMA direction other than DMA_BIDIRECTIONAL
RDMA/umem: Map CQ buffers DMA_FROM_DEVICE
RDMA/umem: Derive DMA direction from IB access flags
RDMA/mlx5: Fix mlx5_ib_dev_res_init() failure when XRC cap is absent
RDMA/mlx5: Set WQ event handler before firmware RQ insertion
RDMA/mlx5: Set SRQ event handler before xarray insertion
RDMA/mlx5: Set RQ event handler for raw-packet QP
RDMA/mlx5: Set QP event handler before firmware QPC insertion
RDMA/mlx5: Initialize QP/RQ/SQ resource refcount before publishing it
RDMA/mlx5: Fix signed integer overflow in EQE qp_srq type shift

Yonatan Nachum (1):
RDMA/efa: Fix race between admin command timeout and completion

Youngsung Ahn (5):
RDMA/rxe: refuse to destroy a QP with type 2 MWs still bound
RDMA/rxe: reject IB_WR_REG_MR from user QPs in rxe_reg_fast_mr()
RDMA/rxe: bound the ODP page index against the umem in rxe_check_pagefault()
RDMA/rxe: validate inline sge_offset in finish_packet() before indexing inline_data[]
RDMA/rxe: bound the WQE opcode before indexing rxe_wr_opcode_info[]

Zhiwei Zhang (1):
RDMA/rxe: Clear pkt->qp before the early drop exits in rxe_rcv()

xiongweimin (1):
RDMA/rxe: Hold netdev reference for transmit skbs

Documentation/ABI/stable/sysfs-class-infiniband | 118 ---
.../bindings/infiniband/hisilicon,hns-roce-v1.yaml | 173 +++++
.../bindings/infiniband/hisilicon-hns-roce.txt | 108 ---
MAINTAINERS | 4 +-
drivers/infiniband/core/cma.c | 34 +-
drivers/infiniband/core/cma_trace.h | 1 +
drivers/infiniband/core/device.c | 4 +-
drivers/infiniband/core/ib_core_uverbs.c | 22 +-
drivers/infiniband/core/iwcm.c | 2 +-
drivers/infiniband/core/lag.c | 14 +-
drivers/infiniband/core/mad.c | 2 +
drivers/infiniband/core/mad_rmpp.c | 7 +-
drivers/infiniband/core/multicast.c | 7 +-
drivers/infiniband/core/nldev.c | 9 +-
drivers/infiniband/core/rdma_core.c | 2 +
drivers/infiniband/core/rdma_core.h | 17 +-
drivers/infiniband/core/restrack.c | 3 +-
drivers/infiniband/core/sysfs.c | 9 +-
drivers/infiniband/core/umem.c | 77 +-
drivers/infiniband/core/uverbs.h | 37 +
drivers/infiniband/core/uverbs_std_types_device.c | 1 +
drivers/infiniband/core/uverbs_std_types_dmabuf.c | 46 +-
drivers/infiniband/core/uverbs_std_types_wq.c | 2 +-
drivers/infiniband/core/uverbs_uapi.c | 2 +-
drivers/infiniband/core/verbs.c | 8 +-
drivers/infiniband/hw/bnxt_re/bnxt_re.h | 4 +
drivers/infiniband/hw/bnxt_re/hw_counters.c | 6 +-
drivers/infiniband/hw/bnxt_re/ib_verbs.c | 69 +-
drivers/infiniband/hw/bnxt_re/main.c | 24 +-
drivers/infiniband/hw/bnxt_re/qplib_rcfw.c | 4 +
drivers/infiniband/hw/bnxt_re/qplib_res.c | 23 +-
drivers/infiniband/hw/bnxt_re/qplib_sp.c | 2 +-
drivers/infiniband/hw/cxgb4/cm.c | 5 +-
drivers/infiniband/hw/cxgb4/cq.c | 2 +-
drivers/infiniband/hw/cxgb4/provider.c | 5 +
drivers/infiniband/hw/efa/efa_admin_cmds_defs.h | 5 +-
drivers/infiniband/hw/efa/efa_com.c | 28 +-
drivers/infiniband/hw/efa/efa_com_cmd.c | 9 +-
drivers/infiniband/hw/efa/efa_com_cmd.h | 8 +-
drivers/infiniband/hw/efa/efa_verbs.c | 7 +-
drivers/infiniband/hw/erdma/erdma_cq.c | 18 +-
drivers/infiniband/hw/erdma/erdma_main.c | 2 +-
drivers/infiniband/hw/erdma/erdma_qp.c | 38 +-
drivers/infiniband/hw/erdma/erdma_verbs.c | 577 ++++++++-------
drivers/infiniband/hw/erdma/erdma_verbs.h | 66 +-
drivers/infiniband/hw/hfi1/affinity.c | 2 +-
drivers/infiniband/hw/hfi1/chip.c | 4 +-
drivers/infiniband/hw/hfi1/firmware.c | 2 +-
drivers/infiniband/hw/hfi1/pcie.c | 14 +-
drivers/infiniband/hw/hfi1/sdma.c | 3 +
drivers/infiniband/hw/hfi1/verbs.c | 4 +
drivers/infiniband/hw/hns/hns_roce_bond.c | 4 +-
drivers/infiniband/hw/hns/hns_roce_cq.c | 3 +-
drivers/infiniband/hw/hns/hns_roce_debugfs.c | 55 ++
drivers/infiniband/hw/hns/hns_roce_debugfs.h | 1 +
drivers/infiniband/hw/hns/hns_roce_device.h | 6 +-
drivers/infiniband/hw/hns/hns_roce_hw_v2.c | 63 +-
drivers/infiniband/hw/hns/hns_roce_mr.c | 22 +-
drivers/infiniband/hw/hns/hns_roce_qp.c | 2 +-
drivers/infiniband/hw/hns/hns_roce_srq.c | 4 +-
drivers/infiniband/hw/ionic/ionic_admin.c | 117 ++-
drivers/infiniband/hw/ionic/ionic_controlpath.c | 822 +++++++++++++++------
drivers/infiniband/hw/ionic/ionic_datapath.c | 98 +--
drivers/infiniband/hw/ionic/ionic_fw.h | 76 +-
drivers/infiniband/hw/ionic/ionic_ibdev.c | 24 +-
drivers/infiniband/hw/ionic/ionic_ibdev.h | 85 ++-
drivers/infiniband/hw/ionic/ionic_lif_cfg.c | 3 +
drivers/infiniband/hw/ionic/ionic_lif_cfg.h | 3 +
drivers/infiniband/hw/irdma/ctrl.c | 31 +-
drivers/infiniband/hw/irdma/hw.c | 16 +-
drivers/infiniband/hw/irdma/icrdma_if.c | 9 +-
drivers/infiniband/hw/irdma/main.c | 2 +
drivers/infiniband/hw/irdma/pble.c | 8 +-
drivers/infiniband/hw/irdma/protos.h | 3 +-
drivers/infiniband/hw/irdma/type.h | 7 +-
drivers/infiniband/hw/irdma/verbs.c | 134 ++--
drivers/infiniband/hw/mana/cq.c | 372 +++++++---
drivers/infiniband/hw/mana/device.c | 3 +-
drivers/infiniband/hw/mana/main.c | 43 +-
drivers/infiniband/hw/mana/mana_ib.h | 134 +++-
drivers/infiniband/hw/mana/qp.c | 150 +++-
drivers/infiniband/hw/mana/shadow_queue.h | 61 +-
drivers/infiniband/hw/mana/wq.c | 3 +-
drivers/infiniband/hw/mana/wr.c | 158 ++--
drivers/infiniband/hw/mlx4/cm.c | 10 +
drivers/infiniband/hw/mlx4/cq.c | 17 +-
drivers/infiniband/hw/mlx4/main.c | 4 +
drivers/infiniband/hw/mlx4/mcg.c | 4 +-
drivers/infiniband/hw/mlx5/Makefile | 1 -
drivers/infiniband/hw/mlx5/cmd.c | 21 -
drivers/infiniband/hw/mlx5/cmd.h | 2 -
drivers/infiniband/hw/mlx5/cq.c | 14 +-
drivers/infiniband/hw/mlx5/data_direct.c | 227 ------
drivers/infiniband/hw/mlx5/data_direct.h | 23 -
drivers/infiniband/hw/mlx5/fs.c | 52 +-
drivers/infiniband/hw/mlx5/main.c | 200 ++---
drivers/infiniband/hw/mlx5/mlx5_ib.h | 18 +-
drivers/infiniband/hw/mlx5/mr.c | 7 +-
drivers/infiniband/hw/mlx5/odp.c | 6 +-
drivers/infiniband/hw/mlx5/qp.c | 32 +-
drivers/infiniband/hw/mlx5/qpc.c | 20 +-
drivers/infiniband/hw/mlx5/srq.c | 3 +-
drivers/infiniband/hw/mlx5/std_types.c | 3 +-
drivers/infiniband/hw/mlx5/umr.c | 11 +-
drivers/infiniband/hw/mlx5/wr.c | 1 +
drivers/infiniband/hw/mthca/mthca_cq.c | 3 +-
drivers/infiniband/hw/ocrdma/ocrdma_verbs.c | 6 +-
drivers/infiniband/hw/qedr/verbs.c | 25 +-
drivers/infiniband/hw/usnic/usnic_abi.h | 2 +-
drivers/infiniband/hw/usnic/usnic_debugfs.c | 2 +-
drivers/infiniband/hw/usnic/usnic_ib_verbs.c | 2 +-
drivers/infiniband/hw/usnic/usnic_transport.h | 2 +-
drivers/infiniband/hw/vmw_pvrdma/pvrdma_qp.c | 6 +-
drivers/infiniband/hw/vmw_pvrdma/pvrdma_srq.c | 3 +-
drivers/infiniband/sw/rdmavt/qp.c | 4 +-
drivers/infiniband/sw/rdmavt/srq.c | 2 +-
drivers/infiniband/sw/rxe/rxe_loc.h | 8 +-
drivers/infiniband/sw/rxe/rxe_mr.c | 18 +-
drivers/infiniband/sw/rxe/rxe_mw.c | 3 +
drivers/infiniband/sw/rxe/rxe_net.c | 73 +-
drivers/infiniband/sw/rxe/rxe_odp.c | 9 +-
drivers/infiniband/sw/rxe/rxe_qp.c | 10 +
drivers/infiniband/sw/rxe/rxe_recv.c | 9 +-
drivers/infiniband/sw/rxe/rxe_req.c | 11 +-
drivers/infiniband/sw/rxe/rxe_resp.c | 23 +-
drivers/infiniband/sw/rxe/rxe_verbs.c | 6 +
drivers/infiniband/sw/rxe/rxe_verbs.h | 1 +
drivers/infiniband/sw/siw/siw_main.c | 5 +-
drivers/infiniband/sw/siw/siw_qp_tx.c | 21 +-
drivers/infiniband/ulp/ipoib/ipoib_main.c | 7 +
drivers/infiniband/ulp/ipoib/ipoib_vlan.c | 2 +-
drivers/infiniband/ulp/iser/iscsi_iser.c | 6 +-
drivers/infiniband/ulp/iser/iser_verbs.c | 2 +-
drivers/infiniband/ulp/isert/ib_isert.c | 2 +-
drivers/infiniband/ulp/rtrs/rtrs-clt.c | 100 +--
drivers/infiniband/ulp/srp/ib_srp.c | 2 +-
drivers/infiniband/ulp/srpt/ib_srpt.c | 2 +-
drivers/infiniband/ulp/srpt/ib_srpt.h | 2 +-
drivers/net/ethernet/mellanox/mlx5/core/Makefile | 2 +-
.../net/ethernet/mellanox/mlx5/core/data_direct.c | 400 ++++++++++
drivers/net/ethernet/mellanox/mlx5/core/main.c | 15 +
.../net/ethernet/mellanox/mlx5/core/mlx5_core.h | 5 +
drivers/net/ethernet/microsoft/mana/gdma_main.c | 49 +-
drivers/net/ethernet/pensando/ionic/ionic_if.h | 31 +-
include/linux/mlx5/data_direct.h | 47 ++
include/linux/mlx5/driver.h | 8 +
include/net/mana/gdma.h | 12 +-
include/rdma/ib_umem.h | 2 +
include/rdma/ib_verbs.h | 4 +-
include/rdma/uverbs_ioctl.h | 2 +-
include/uapi/rdma/ionic-abi.h | 11 +-
include/uapi/rdma/mana-abi.h | 12 +
tools/testing/selftests/rdma/config | 12 +-
.../testing/selftests/rdma/rxe_sent_rcvd_bytes.sh | 6 +
154 files changed, 3805 insertions(+), 2030 deletions(-)
create mode 100644 Documentation/devicetree/bindings/infiniband/hisilicon,hns-roce-v1.yaml
delete mode 100644 Documentation/devicetree/bindings/infiniband/hisilicon-hns-roce.txt
delete mode 100644 drivers/infiniband/hw/mlx5/data_direct.c
delete mode 100644 drivers/infiniband/hw/mlx5/data_direct.h
create mode 100644 drivers/net/ethernet/mellanox/mlx5/core/data_direct.c
create mode 100644 include/linux/mlx5/data_direct.h

--
Jason

Attachment: signature.asc
Description: PGP signature