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: <TASK> __schedule+0x420/0xd30 schedule+0x47/0x130 schedule_timeout+0x280/0x300 ? mark_held_locks+0x48/0x80 ? lockdep_hardirqs_on_prepare+0xe5/0x1a0 wait_for_completion+0x75/0x130 mlx5r_umr_post_send_wait+0x3c2/0x5b0 [mlx5_ib] ? __pfx_mlx5r_umr_done+0x10/0x10 [mlx5_ib] mlx5r_umr_revoke_mr+0x93/0xc0 [mlx5_ib] __mlx5_ib_dereg_mr+0x299/0x520 [mlx5_ib] ? _raw_spin_unlock_irq+0x24/0x40 ? wait_for_completion+0xfe/0x130 ? rdma_restrack_put+0x63/0xe0 [ib_core] ib_dereg_mr_user+0x5f/0x120 [ib_core] ? lock_release+0xc6/0x280 destroy_hw_idr_uobject+0x1d/0x60 [ib_uverbs] uverbs_destroy_uobject+0x58/0x1d0 [ib_uverbs] uobj_destroy+0x3f/0x70 [ib_uverbs] ib_uverbs_cmd_verbs+0x3e4/0xbb0 [ib_uverbs] ? __pfx_uverbs_destroy_def_handler+0x10/0x10 [ib_uverbs] ? __lock_acquire+0x64e/0x2080 ? mark_held_locks+0x48/0x80 ? find_held_lock+0x2d/0xa0 ? lock_acquire+0xc1/0x2f0 ? ib_uverbs_ioctl+0xcb/0x170 [ib_uverbs] ? __fget_files+0xc3/0x1b0 ib_uverbs_ioctl+0xe7/0x170 [ib_uverbs] ? ib_uverbs_ioctl+0xcb/0x170 [ib_uverbs] __x64_sys_ioctl+0x1b0/0xa70 do_syscall_64+0x6b/0x140 entry_SYSCALL_64_after_hwframe+0x76/0x7e RIP: 0033:0x7f99c918b17b RSP: 002b:00007ffc766d0468 EFLAGS: 00000246 ORIG_RAX: 0000000000000010 RAX: ffffffffffffffda RBX: 00007ffc766d0578 RCX: 00007f99c918b17b RDX: 00007ffc766d0560 RSI: 00000000c0181b01 RDI: 0000000000000003 RBP: 00007ffc766d0540 R08: 00007f99c8f99010 R09: 000000000000bd7e R10: 00007f99c94c1c70 R11: 0000000000000246 R12: 00007ffc766d0530 R13: 000000000000001c R14: 0000000040246a80 R15: 0000000000000000 </TASK>
CVSS Details
- CVSS 3.1 Base Score: 4.7
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Debian | — | Upgrade linux | May 15, 2025 | Mar 27, 2025 |
| Oracle_linux | — | Upgrade kernel-uek | May 13, 2026 | Mar 27, 2025 |
| Redhat_linux | — | No solution exists | Jul 9, 2025 | Mar 27, 2025 |
| Suse | — | Upgrade dtb-sprdUpgrade kernel-debugUpgrade kernel-default-livepatch-develUpgrade kernel-docsUpgrade kselftests-kmp-rtUpgrade kernel-debug-develUpgrade kernel-rt-livepatch-develUpgrade kernel-rt_debugUpgrade kernel-syms-rtUpgrade dtb-marvellUpgrade dtb-renesasUpgrade dtb-armUpgrade kernel-debug-vdsoUpgrade dlm-kmp-defaultUpgrade dtb-apmUpgrade kernel-rt-extraUpgrade dtb-hisiliconUpgrade dtb-socionextUpgrade kernel-defaultUpgrade dtb-broadcomUpgrade kernel-rt_debug-vdsoUpgrade kernel-docs-htmlUpgrade kernel-kvmsmall-vdsoUpgrade ocfs2-kmp-azureUpgrade dlm-kmp-rtUpgrade kernel-default-baseUpgrade kselftests-kmp-defaultUpgrade dtb-amdUpgrade kernel-64kb-extraUpgrade cluster-md-kmp-defaultUpgrade dlm-kmp-azureUpgrade reiserfs-kmp-defaultUpgrade dtb-nvidiaUpgrade reiserfs-kmp-rtUpgrade cluster-md-kmp-64kbUpgrade dtb-appleUpgrade gfs2-kmp-defaultUpgrade kernel-azure-extraUpgrade kernel-obs-buildUpgrade dtb-amlogicUpgrade kernel-azure-vdsoUpgrade kernel-rt-vdsoUpgrade kernel-64kb-optionalUpgrade kernel-symsUpgrade dtb-allwinnerUpgrade kernel-default-livepatchUpgrade kernel-default-develUpgrade dtb-xilinxUpgrade kernel-rt_debug-develUpgrade dtb-caviumUpgrade kernel-source-vanillaUpgrade kernel-default-base-rebuildUpgrade dtb-rockchipUpgrade dtb-mediatekUpgrade kernel-syms-azureUpgrade kernel-azure-optionalUpgrade kernel-kvmsmallUpgrade kernel-source-azureUpgrade kernel-rtUpgrade kernel-zfcpdumpUpgrade kernel-sourceUpgrade kernel-rt-develUpgrade kernel-default-vdsoUpgrade kernel-azureUpgrade gfs2-kmp-azureUpgrade dtb-alteraUpgrade reiserfs-kmp-64kbUpgrade kernel-64kb-develUpgrade gfs2-kmp-64kbUpgrade dtb-lgUpgrade dtb-freescaleUpgrade cluster-md-kmp-rtUpgrade cluster-md-kmp-azureUpgrade reiserfs-kmp-azureUpgrade ocfs2-kmp-64kbUpgrade kernel-kvmsmall-develUpgrade ocfs2-kmp-rtUpgrade kernel-64kbUpgrade kernel-source-rtUpgrade kernel-develUpgrade dtb-amazonUpgrade kselftests-kmp-azureUpgrade kernel-obs-qaUpgrade kernel-azure-develUpgrade kernel-macrosUpgrade gfs2-kmp-rtUpgrade dlm-kmp-64kbUpgrade kselftests-kmp-64kbUpgrade kernel-rt-optionalUpgrade kernel-devel-rtUpgrade kernel-devel-azureUpgrade kernel-default-optionalUpgrade kernel-default-extraUpgrade dtb-qcomUpgrade dtb-exynosUpgrade ocfs2-kmp-default | Dec 5, 2025 | Jun 12, 2025 |
| Ubuntu | — | Upgrade linux-image-lowlatencyUpgrade linux-image-oracle-64kUpgrade linux-image-nvidiaUpgrade linux-image-6.11.0-1014-awsUpgrade linux-image-virtual-6.8Upgrade linux-image-azure-nvidia-lts-24.04Upgrade linux-image-6.8.0-1039-raspiUpgrade linux-image-raspi-realtime-6.8Upgrade linux-image-raspi-6.8Upgrade linux-image-nvidia-6.8Upgrade linux-image-6.8.0-1040-gcpUpgrade linux-image-azure-fde-lts-24.04Upgrade linux-image-azure-fdeUpgrade linux-image-6.8.0-1025-azure-nvidiaUpgrade linux-image-gke-6.8Upgrade linux-image-gke-64kUpgrade linux-image-ibm-6.8Upgrade linux-image-realtime-6.8.1Upgrade linux-image-lowlatency-6.8Upgrade linux-image-oracle-lts-24.04Upgrade linux-image-ibmUpgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-6.8.0-1037-oracleUpgrade linux-image-6.8.0-2031-raspi-realtimeUpgrade linux-image-aws-6.8Upgrade linux-image-6.11.0-1010-realtimeUpgrade linux-image-6.11.0-1022-oemUpgrade linux-image-6.8.0-1037-ibmUpgrade linux-image-aws-lts-24.04Upgrade linux-image-gkeop-6.8Upgrade linux-image-generic-64kUpgrade linux-image-gkeopUpgrade linux-image-nvidia-64kUpgrade linux-image-azure-nvidia-6.8Upgrade linux-image-nvidia-lowlatencyUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-gcp-64kUpgrade linux-image-gke-64k-6.8Upgrade linux-image-lowlatency-64kUpgrade linux-image-generic-64k-6.8Upgrade linux-image-azureUpgrade linux-image-nvidia-lowlatency-6.8Upgrade linux-image-oracle-64k-6.8Upgrade linux-image-6.11.0-1015-gcp-64kUpgrade linux-image-azure-nvidiaUpgrade linux-image-oracle-6.8Upgrade linux-image-oem-22.04dUpgrade linux-image-generic-6.8Upgrade linux-image-raspiUpgrade linux-image-6.8.0-85-generic-64kUpgrade linux-image-genericUpgrade linux-image-azure-6.8Upgrade linux-image-6.11.0-1014-lowlatencyUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-6.11.0-1015-azure-fdeUpgrade linux-image-6.8.1-1034-realtimeUpgrade linux-image-nvidia-lowlatency-64k-6.8Upgrade linux-image-6.8.0-84-lowlatencyUpgrade linux-image-6.8.0-1036-azure-fdeUpgrade linux-image-gcp-6.8Upgrade linux-image-6.11.0-26-genericUpgrade linux-image-6.8.0-1039-aws-64kUpgrade linux-image-6.11.0-26-generic-64kUpgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-lowlatency-64k-hwe-24.04Upgrade linux-image-6.11.0-1016-oracle-64kUpgrade linux-image-6.8.0-84-lowlatency-64kUpgrade linux-image-oem-22.04bUpgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-6.11.0-1015-azureUpgrade linux-image-6.8.0-1039-nvidiaUpgrade linux-image-virtualUpgrade linux-image-6.8.0-1039-nvidia-64kUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-azure-fde-6.8Upgrade linux-image-6.8.0-1039-nvidia-lowlatencyUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-realtime-hwe-22.04Upgrade linux-image-oracleUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-6.11.0-1014-lowlatency-64kUpgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-raspi-realtimeUpgrade linux-image-awsUpgrade linux-image-gcpUpgrade linux-image-6.8.0-85-genericUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-aws-64kUpgrade linux-image-kvmUpgrade linux-image-6.8.0-84-generic-64kUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-nvidia-64k-6.8Upgrade linux-image-6.11.0-1013-raspiUpgrade linux-image-6.11.0-1016-oracleUpgrade linux-image-gkeUpgrade linux-image-6.8.0-84-genericUpgrade linux-image-gcp-64k-6.8Upgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-6.8.0-1040-gcp-64kUpgrade linux-image-6.11.0-1015-gcpUpgrade linux-image-6.8.0-1036-gkeUpgrade linux-image-6.8.0-1038-azureUpgrade linux-image-6.8.0-1023-gkeopUpgrade linux-image-gcp-lts-24.04Upgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-realtimeUpgrade linux-image-6.8.0-1036-gke-64kUpgrade linux-image-generic-lpaeUpgrade linux-image-oem-24.04bUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-6.8.0-1038-azure-fdeUpgrade linux-image-6.8.0-1036-azureUpgrade linux-image-6.8.0-1037-oracle-64kUpgrade linux-image-oem-22.04Upgrade linux-image-ibm-lts-24.04Upgrade linux-image-azure-lts-24.04Upgrade linux-image-lowlatency-hwe-24.04Upgrade linux-image-6.8.0-1039-nvidia-lowlatency-64kUpgrade linux-image-6.8.0-1039-awsUpgrade linux-image-generic-hwe-22.04Upgrade linux-image-oem-22.04cUpgrade linux-image-aws-64k-6.8Upgrade linux-image-ibm-classic | May 21, 2025 | Mar 27, 2025 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub