PT-2026-52303 · Linux+1 · Linux Kernel+1
CVSS v3.1
9.8
Critical
| Vector | AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
Name of the Vulnerable Software and Affected Versions
Linux kernel (affected versions not specified)
Description
A recursive spinlock self-deadlock (AA deadlock) can occur on
hugetlb lock when two concurrent madvise(MADV HWPOISON) calls are made on the same hugetlb page while racing with a concurrent unmap. This happens because the out: path in the get huge page for hwpoison() function calls folio put() to drop the GUP reference while the hugetlb lock is still held by the get huge page for hwpoison() wrapper. If a concurrent unmap has already released the page table mapping reference, folio put() reduces the folio refcount to zero, triggering free huge folio(), which then attempts to re-acquire the non-recursive hugetlb lock, resulting in a deadlock.Recommendations
At the moment, there is no information about a newer version that contains a fix for this vulnerability.
Exploit
Improper Locking
Found an issue in the description? Have something to add? Feel free to write us 👾
Weakness Enumeration
Related Identifiers
Affected Products
Linux Kernel
Ubuntu