CVE-2024-40948: mm/page_table_check: fix crash on ZONE_DEVICE
In the Linux kernel, the following vulnerability has been resolved:
mm/pagetablecheck: fix crash on ZONEDEVICE
Not all pages may apply to pgtable check. One example is ZONEDEVICE pages: they map PFNs directly, and they don't allocate pageext at all even if there's struct page around. One may reference devmmemremappages().
When both ZONEDEVICE and page-table-check enabled, then try to map some dax memories, one can trigger kernel bug constantly now when the kernel was trying to inject some pfn maps on the dax device:
kernel BUG at mm/pagetablecheck.c:55!
While it's pretty legal to use setpxxat() for ZONEDEVICE pages for page fault resolutions, skip all the checks if pageext doesn't even exist in pgtable checker, which applies to ZONEDEVICE but maybe more.
Affected Software
Remediation
Event History
Frequently Asked Questions
What is the severity of CVE-2024-40948?
CVE-2024-40948 has been rated with a high severity due to the potential for system crashes.
How do I fix CVE-2024-40948?
To remediate CVE-2024-40948, upgrade to kernel versions 6.1.96, 6.6.36, 6.9.7, 6.10, or the specified versions for Debian Linux.
What systems are affected by CVE-2024-40948?
CVE-2024-40948 affects Linux kernel versions prior to the specified remedial versions from Red Hat and Debian.
What type of vulnerability is CVE-2024-40948?
CVE-2024-40948 is a memory management issue in the Linux kernel related to page table checks.
When was CVE-2024-40948 disclosed?
CVE-2024-40948 was disclosed as part of the ongoing maintenance and security updates for the Linux kernel.