In the Linux kernel, the following vulnerability has been resolved:
driver core: fix deadlock in __device_attach
In __device_attach function, The lock holding logic is as follows: ... __device_attach device_lock(dev) // get lock dev async_schedule_dev(__device_attach_async_helper, dev); // func async_schedule_node async_schedule_node_domain(func) entry = kzalloc(sizeof(struct async_entry), GFP_ATOMIC); /* when fail or work limit, sync to execute func, but __device_attach_async_helper will get lock dev as well, which will lead to A-A deadlock. */ if (!entry || atomic_read(&entry_count) > MAX_WORK) { func; else queue_work_node(node, system_unbound_wq, &entry->work) device_unlock(dev)
As shown above, when it is allowed to do async probes, because of out of memory or work limit, async work is not allowed, to do sync execute instead. it will lead to A-A deadlock because of __device_attach_async_helper getting lock dev.
To fix the deadlock, move the async_schedule_dev outside device_lock, as we can see, in async_schedule_node_domain, the parameter of queue_work_node is system_unbound_wq, so it can accept concurrent operations. which will also not change the code logic, and will not lead to deadlock.
CVSS Details
- CVSS 3.1 Base Score: 5.5
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Amazon Linux Ami 2 | — | Upgrade kernel-develUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-livepatch-5.15.50-23.125Upgrade bpftoolUpgrade python-perfUpgrade kernel-debuginfoUpgrade bpftool-debuginfoUpgrade kernel-livepatch-5.10.126-117.518Upgrade kernel-tools-debuginfoUpgrade perf-debuginfoUpgrade perfUpgrade kernel-headersUpgrade kernelUpgrade kernel-debuginfo-common-aarch64Upgrade python-perf-debuginfoUpgrade kernel-toolsUpgrade kernel-tools-devel | May 22, 2025 | Feb 26, 2025 |
| Debian | — | Upgrade linux | Feb 27, 2025 | Feb 27, 2025 |
| Huawei Euleros 2_0_sp13 | — | Upgrade kernel-tools-libsUpgrade bpftoolUpgrade kernel-abi-stablelistsUpgrade kernelUpgrade kernel-toolsUpgrade python3-perf | Jul 1, 2025 | Feb 26, 2025 |
| Redhat_linux | — | No solution exists | Jul 9, 2025 | Feb 26, 2025 |
| Ubuntu | — | Upgrade linux-raspiUpgrade linux-iotUpgrade linux-bluefieldUpgrade linux-oracle-5.4Upgrade linux-intel-iotgUpgrade linux-gcpUpgrade linux-raspi-5.4Upgrade linux-realtimeUpgrade linux-aws-5.15Upgrade linux-lowlatency-hwe-5.15Upgrade linux-riscv-5.15Upgrade linux-hwe-5.15Upgrade linux-gcp-5.15Upgrade linux-awsUpgrade linux-azureUpgrade linux-intel-iotg-5.15Upgrade linux-ibm-5.4Upgrade linux-ibmUpgrade linux-kvmUpgrade linux-oracleUpgrade linux-lowlatencyUpgrade linux-gcp-fipsUpgrade linux-nvidiaUpgrade linux-aws-fipsUpgrade linux-gcp-5.4Upgrade linux-fipsUpgrade linux-gkeUpgrade linux-azure-5.15Upgrade linux-hwe-5.4Upgrade linux-azure-fipsUpgrade linux-azure-5.4Upgrade linux-oracle-5.15Upgrade linuxUpgrade linux-aws-5.4Upgrade linux-gkeop | Mar 3, 2025 | Feb 26, 2025 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | May 27, 2026 | Feb 26, 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