VYPR
Unrated severityNVD Advisory· Published Dec 30, 2025· Updated Apr 15, 2026

CVE-2023-54167

CVE-2023-54167

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.

AI Insight

LLM-synthesized narrative grounded in this CVE's description and references.

Linux kernel m68k boot crash with initrd on non-zero-phys-address platforms due to phys_to_virt() called before paging_init().

Bug

On m68k systems where physical memory does not start at address zero (e.g. Amiga), booting with an initial RAM disk triggers a kernel crash because phys_to_virt() is invoked before paging_init(). The phys_to_virt() macro depends on m68k_memoffset and module_fixup(), which are only initialized during paging_init(). Calling it prematurely leads to an invalid virtual address and an Oops.

Exploitation

No special attacker interaction is required; the crash occurs during normal boot when an initrd is present on affected hardware. The prerequisite is a m68k platform with a non-zero physical memory base. Authentication or network access is not needed, as the bug manifests at boot time.

Impact

The kernel fails to boot with an "Unable to handle kernel access" panic, rendering the system unusable. An attacker capable of booting a crafted initrd could cause denial of service, but the primary risk is system instability for legitimate users.

Mitigation

The fix, committed in kernel stable branches, postpones the phys_to_virt() handling for the initial ramdisk until after paging_init() and reduces #ifdef clutter by using IS_ENABLED() [1][2]. Affected users should apply the latest stable kernel updates; no workaround is available without patching.

AI Insight generated on May 19, 2026. Synthesized from this CVE's description and the cited reference URLs; citations are validated against the source bundle.

Affected products

1

Patches

3

Vulnerability mechanics

Generated on May 9, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.

References

3

News mentions

0

No linked articles in our index yet.