Findings

CVE-2026-98354

RDMA/mad: Fix receive buffer leak when PKey enforcement fails

Published Oct 6, 2026 · updated Oct 15, 2026

In the Linux kernel, the following vulnerability has been resolved: RDMA/mad: Fix receive buffer leak when PKey enforcement fails ib_mad_complete_recv() initializes mad_recv_wc->rmpp_list and then runs ib_mad_enforce_security() before linking recv_buf onto that list. On failure it calls ib_free_recv_mad(), which only walks rmpp_list and frees the ib_mad_private of every buffer found there. As the list is still empty at that point, nothing is freed at all. The caller cannot clean up either: ib_mad_recv_done() sets recv to NULL right after ib_mad_complete_recv() returns, assuming the MAD layer took ownership of the buffer. Every MAD that fails the PKey check therefore leaks one ib_mad_private (about 300 bytes per IB port MAD, ~2K for OPA), and a remote node can trigger this repeatedly by sending MADs with a wrong PKey. Link recv_buf onto rmpp_list right after the list is initialized, so the error path has something to free.

Code

The project this record applies to. Exploit listings stay in References.

Timeline

Detection, updates, and resolution for this record.

  1. Oct 6, 2026 · OSV.dev

    Detected

    In the Linux kernel, the following vulnerability has been resolved: RDMA/mad: Fix receive buffer leak when PKey enforcement fails ib_mad_complete_recv() initializes mad_recv_wc->rmpp_list and then runs ib_mad_enforce_security() before linking recv_buf onto that list. On failure it calls ib_free_recv_mad(), which only walks rmpp_list and frees the ib_mad_private of every buffer found there. As the

  2. Oct 15, 2026 · OSV.dev

    Fix available

    Kernel fixed in 5.10.271

  3. Oct 15, 2026 · OSV.dev

    Fix available

    Kernel fixed in 5.10.271

  4. Oct 15, 2026 · OSV.dev

    Updated

    In the Linux kernel, the following vulnerability has been resolved: RDMA/mad: Fix receive buffer leak when PKey enforcement fails ib_mad_complete_recv() initializes mad_recv_wc->rmpp_list and then runs ib_mad_enforce_security() before linking recv_buf onto that list. On failure it calls ib_free_recv_mad(), which only walks rmpp_list and frees the ib_mad_private of every buffer found there. As the

Affected

  • Linux Kernel4.13.0 → 5.10.271

Sources

  • CVE.orgVulnerability recordCVE-2026-98354

    Official CVE identifier

    cve.org
  • OSV.devPackage advisoryCVE-2026-98354

    RDMA/mad: Fix receive buffer leak when PKey enforcement fails

    osv.dev

References