CVE-2023-54167
Unknown Unknown - Not Provided
Incorrect phys_to_virt() Handling Causes Kernel Oops on m68k Linux

Publication date: 2025-12-30

Last updated on: 2025-12-30

Assigner: kernel.org

Description
In the Linux kernel, the following vulnerability has been resolved: m68k: mm: Move initrd phys_to_virt handling after paging_init() When booting with an initial ramdisk on platforms where physical memory does not start at address zero (e.g. on Amiga): initrd: 0ef0602c - 0f800000 Zone ranges: DMA [mem 0x0000000008000000-0x000000f7ffffffff] Normal empty Movable zone start for each node Early memory node ranges node 0: [mem 0x0000000008000000-0x000000000f7fffff] Initmem setup node 0 [mem 0x0000000008000000-0x000000000f7fffff] Unable to handle kernel access at virtual address (ptrval) Oops: 00000000 Modules linked in: PC: [<00201d3c>] memcmp+0x28/0x56 As phys_to_virt() relies on m68k_memoffset and module_fixup(), it must not be called before paging_init(). Hence postpone the phys_to_virt handling for the initial ramdisk until after calling paging_init(). While at it, reduce #ifdef clutter by using IS_ENABLED() instead.
CVSS Scores
EPSS Scores
Probability:
Percentile:
Meta Information
Published
2025-12-30
Last Modified
2025-12-30
Generated
2026-05-06
AI Q&A
2025-12-30
EPSS Evaluated
2026-05-05
NVD
EUVD
Affected Vendors & Products
Showing 1 associated CPE
Vendor Product Version / Range
linux linux_kernel *
Helpful Resources
Exploitability
CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-UNKNOWN
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?

This vulnerability involves the Linux kernel on m68k platforms where physical memory does not start at address zero, such as Amiga systems. The issue arises because the function phys_to_virt() is called before paging_init(), which it depends on due to reliance on m68k_memoffset and module_fixup(). This premature call can cause the kernel to access invalid virtual addresses during boot with an initial ramdisk, leading to kernel crashes or 'Oops' errors. The fix was to postpone the phys_to_virt() handling for the initial ramdisk until after paging_init() is called.


How can this vulnerability impact me? :

This vulnerability can cause the Linux kernel to crash or encounter fatal errors during the boot process on affected m68k platforms using an initial ramdisk, potentially rendering the system unbootable or unstable until the issue is resolved.


What immediate steps should I take to mitigate this vulnerability?

Update the Linux kernel to a version where the phys_to_virt handling for the initial ramdisk on m68k platforms is postponed until after paging_init() is called. This fixes the issue where phys_to_virt() is called too early, causing kernel access errors during boot with an initial ramdisk on platforms where physical memory does not start at address zero.


Ask Our AI Assistant
Need more information? Ask your question to get an AI reply (Powered by our expertise)
0/70
EPSS Chart