RDMA/mlx5: Fix the recovery flow of the UMR QP
In the Linux kernel, the following vulnerability has been resolved: RDMA/mlx5: Fix the recovery flow of the UMR QP This patch addresses an issue in the recovery flow of the UMR QP, ensuring tasks do not get stuck, as highlighted by the call trace [1]. During recovery, before transitioning the QP to the RESET state, the software must wait for all outstanding WRs to complete. Failing to do so can cause the firmware to skip sending some flushed CQEs with errors and simply discard them upon the RESET, as per the IB specification. This race condition can result in lost CQEs and tasks becoming stuck. To resolve this, the patch sends a final WR which serves only as a barrier before moving the QP state to RESET. Once a CQE is received for that final WR, it guarantees that no outstanding WRs remain, making it safe to transition the QP to RESET and subsequently back to RTS, restoring proper functionality. Note: For the barrier WR, we simply reuse the failed and ready WR. Since the QP is in an error state, it will only receive IB_WC_WR_FLUSH_ERR. However, as it serves only as a barrier we don't care about its status. [1] INFO: task rdma_resource_l:1922 blocked for more than 120 seconds. Tainted: G W 6.12.0-rc7+ #1626 "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. task:rdma_resource_l state:D stack:0 pid:1922 tgid:1922 ppid:1369 flags:0x00004004 Call Trace: __schedule+0x420/0xd30 schedule+0x47/0x130 schedule_timeout+0x280/0x300 ? mark_held_locks+0x48/0x80 ? loc
CVE-2025-21892
Primary source · Revision 1
Imported from structured advisory data. Source references identify upstream records or fields; verify affected versions and your deployed configuration.
Security context
Source reference: cve:CVE-2025-21892
Linux
Source reference: /containers/cna/affected/0/product
- Affected versions
- Not stated in this record
- Fixed versions
- Not stated in this record
- Prerequisites
- Not stated in this record
Linux
Source reference: /containers/cna/affected/1/product
- Affected versions
- Not stated in this record
- Fixed versions
- Not stated in this record
- Prerequisites
- Not stated in this record
Structured affected-version data
Original package identities and version rules from this source.
[
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "158e71bb69e368b8b33e8b7c4ac8c111da0c1ae2",
"lessThan": "6088e11c9aed12ecc8df465bdd334e60b75999a9",
"versionType": "git"
},
{
"status": "affected",
"version": "158e71bb69e368b8b33e8b7c4ac8c111da0c1ae2",
"lessThan": "3e3bf255992cc02404e9d209b127c1c9944239cf",
"versionType": "git"
},
{
"status": "affected",
"version": "158e71bb69e368b8b33e8b7c4ac8c111da0c1ae2",
"lessThan": "1d2b84d8d054313deed2b2fcafe1168bbcb9e99f",
"versionType": "git"
},
{
"status": "affected",
"version": "158e71bb69e368b8b33e8b7c4ac8c111da0c1ae2",
"lessThan": "d97505baea64d93538b16baf14ce7b8c1fbad746",
"versionType": "git"
},
{
"status": "affected",
"version": "d8f7bff9a42627d37f4ecffeb01e44db42167175",
"versionType": "git"
},
{
"status": "affected",
"version": "5.19.10",
"lessThan": "5.20",
"versionType": "semver"
}
],
"programFiles": [
"drivers/infiniband/hw/mlx5/umr.c"
],
"defaultStatus": "unaffected"
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "6.0"
},
{
"status": "unaffected",
"version": "0",
"lessThan": "6.0",
"versionType": "semver"
},
{
"status": "unaffected",
"version": "6.6.160",
"versionType": "semver",
"lessThanOrEqual": "6.6.*"
},
{
"status": "unaffected",
"version": "6.12.18",
"versionType": "semver",
"lessThanOrEqual": "6.12.*"
},
{
"status": "unaffected",
"version": "6.13.6",
"versionType": "semver",
"lessThanOrEqual": "6.13.*"
},
{
"status": "unaffected",
"version": "6.14",
"versionType": "original_commit_for_fix",
"lessThanOrEqual": "*"
}
],
"programFiles": [
"drivers/infiniband/hw/mlx5/umr.c"
],
"defaultStatus": "affected"
}
]- Related CVEs
- CVE-2025-21892
Source reference:
/cveMetadata/cveId
Publisher severity
No explicit severity was provided.
- Event
- #45950 · Revision 1
- Added to Heist Feed
- Publisher date