PT-2025-7943 · Linux+4 · Linux Kernel+4
Maxime Bizon
·
Published
2021-01-01
·
Updated
2026-03-14
·
CVE-2021-47632
CVSS v3.1
5.5
Medium
| Vector | AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H |
Name of the Vulnerable Software and Affected Versions
Linux kernel versions prior to 5.15.0+
Description
A spinlock recursion issue has been identified in the Linux kernel, specifically in the powerpc/set memory module. The problem arises from the use of spin lock() in the change page attr() function, which can lead to recursion. This issue was reported by Maxime and is associated with a BUG message indicating spinlock recursion on CPU#0. The error occurs when the kernel attempts to perform a three-step operation safely against concurrent access. To resolve this issue, the read/modify/write sequence needs to be removed to make the operation atomic, and the spin lock() in change page attr() must be removed.
Recommendations
For Linux kernel versions prior to 5.15.0+, remove the spin lock() in the change page attr() function and modify the operation to be atomic by comparing the PAGE KERNEL {RO/ROX/RW/RWX} set of flags to determine which bits are set or cleared.
As a temporary workaround, consider disabling the change page attr() function until a patch is available.
Fix
Improper Locking
Found an issue in the description? Have something to add? Feel free to write us 👾
Weakness Enumeration
Related Identifiers
Affected Products
Astra Linux
Debian
Linux Kernel
Red Os
Suse