CVE Catalog

CVE-2026-98367

Unknown
Published: Translated: NVD NIST

Summary

In the Linux kernel, a vulnerability was fixed in the RDMA/siw driver in siw_accept(). If siw_qp_modify() fails, the QP's state_lock is released before error path cleanup, allowing a concurrent ibv_modify_qp() to transition the QP to ERROR and free the cep structure, leading to use-after-free. The fix clears qp->cep and drops the association reference under the held write lock.

Risk Assessment

The risk includes potential use-after-free, which could lead to system crash or privilege escalation in environments using RDMA.

Recommendation

It is recommended to update the Linux kernel to a version containing the fix. Monitor the availability of security updates for systems with RDMA enabled.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: RDMA/siw: Clear association under lock if siw_qp_modify fails in siw_accept We need to clear cep before release state_lock as siw_qp_llp_close and siw_qp_modify->siw_qp_llp_close did. Otherwise if siw_qp_modify() fails in siw_accept(), the QP's state_lock is released before the error path cleanup. A concurrent ibv_modify_qp() transitioning the QP to ERROR can race in this window: siw_accept() ibv_modify_qp(ERROR) ---------------------- ---------------------- siw_qp_modify() fails up_write(&qp->state_lock) down_write(&qp->state_lock) nextstate_from_idle(): if (qp->cep) siw_cep_put(qp->cep) <- frees cep qp->cep = NULL goto error cep->qp = NULL <- UAF Clear qp->cep and drop the association reference taken by siw_cep_get(), all under the write lock held from the initial down_write(&qp->state_lock). Thread B therefore sees qp->cep == NULL, skips its own put, and cannot free the cep before siw_accept() is done with it.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS