Linux kernel
cpe:2.3:a:linux:linux_kernel:*:*:*:*:*:*:*, +4 more
A vulnerability in the Linux kernel has been identified, which causes intermittent boot failures on machines using 4-level paging and a large amount of persistent memory. The issue arises because the kernel panics while initializing the vmemmap (struct page array) when the vmemmap region spans two PGD entries. The new PGD entry is only installed in init_mm.pgd, not in the page tables of other tasks. This desynchronization leads to a page fault error, causing the kernel to crash.
The vulnerability can cause a kernel panic, leading to a crash of the operating system.
The vulnerability can be reproduced by booting a machine with 4-level paging and a large amount of persistent memory. During the boot process, the kernel will encounter a page fault for a not-present page, leading to a crash. This issue can also be triggered by accessing the vmemmap area before the corresponding top-level entries in the page tables have been synchronized, which can happen if the vmemmap optimization is enabled.
Users can apply the latest patches available in the Linux kernel stable tree to address this vulnerability. These patches move the page table synchronization declarations to a central header file, ensuring that the synchronization is properly handled and reducing the risk of future regressions.
Our algorithm analyzes dozens of metrics to generate these 8 key vulnerability categories, which are then combined to calculate the overall risk score.