CVE-2025-22010
08.04.2025, 09:15
In the Linux kernel, the following vulnerability has been resolved: RDMA/hns: Fix soft lockup during bt pages loop Driver runs a for-loop when allocating bt pages and mapping them with buffer pages. When a large buffer (e.g. MR over 100GB) is being allocated, it may require a considerable loop count. This will lead to soft lockup: watchdog: BUG: soft lockup - CPU#27 stuck for 22s! ... Call trace: hem_list_alloc_mid_bt+0x124/0x394 [hns_roce_hw_v2] hns_roce_hem_list_request+0xf8/0x160 [hns_roce_hw_v2] hns_roce_mtr_create+0x2e4/0x360 [hns_roce_hw_v2] alloc_mr_pbl+0xd4/0x17c [hns_roce_hw_v2] hns_roce_reg_user_mr+0xf8/0x190 [hns_roce_hw_v2] ib_uverbs_reg_mr+0x118/0x290 watchdog: BUG: soft lockup - CPU#35 stuck for 23s! ... Call trace: hns_roce_hem_list_find_mtt+0x7c/0xb0 [hns_roce_hw_v2] mtr_map_bufs+0xc4/0x204 [hns_roce_hw_v2] hns_roce_mtr_create+0x31c/0x3c4 [hns_roce_hw_v2] alloc_mr_pbl+0xb0/0x160 [hns_roce_hw_v2] hns_roce_reg_user_mr+0x108/0x1c0 [hns_roce_hw_v2] ib_uverbs_reg_mr+0x120/0x2bc Add a cond_resched() to fix soft lockup during these loops. In order not to affect the allocation performance of normal-size buffer, set the loop count of a 100GB MR as the threshold to call cond_resched().Enginsight
Vendor | Product | Version |
---|---|---|
linux | linux_kernel | 5.3 ≤ 𝑥 < 6.1.132 |
linux | linux_kernel | 6.2 ≤ 𝑥 < 6.6.85 |
linux | linux_kernel | 6.7 ≤ 𝑥 < 6.12.21 |
linux | linux_kernel | 6.13 ≤ 𝑥 < 6.13.9 |
linux | linux_kernel | 6.14:rc1 |
linux | linux_kernel | 6.14:rc2 |
linux | linux_kernel | 6.14:rc3 |
linux | linux_kernel | 6.14:rc4 |
linux | linux_kernel | 6.14:rc5 |
linux | linux_kernel | 6.14:rc6 |
linux | linux_kernel | 6.14:rc7 |
𝑥
= Vulnerable software versions

Debian Releases
Common Weakness Enumeration
Vulnerability Media Exposure
References