UBUNTU-CVE-2026-93239: Low severity ubuntu/linux vulnerability
In the Linux kernel, the following vulnerability has been resolved: arm64: mm: Fix the lockless page-table walk in showpte() showpte() walks page tables locklessly and can run with interrupts enabled. A concurrent teardown can free a table page while it is being walked. It can also clear a parent entry after showpte() checked it; the regular pXdoffset() helpers then reread the cleared entry and can derive a bogus lower-level pointer and fault again. Use the lockless offset helpers with the saved parent entries, as gupfast() does, and pass the saved PMD to pteoffsetmap(). For task page tables, arm64 selects MMUGATHERRCUTABLEFREE. Disable local interrupts around the walk to hold off RCU-deferred table frees and block the tlbremovetablesyncone() IPI until the walk is finished. Place the IRQ guard after the header print. This does not make the output a consistent snapshot, but prevents the task page-table walk from dereferencing a released table page or deriving a pointer from a different parent value.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Compensating control
In show_pte(), place the IRQ guard after the header print and disable local interrupts around the lockless page-table walk to hold off RCU-deferred table frees and block the tlb_remove_table_sync_one() IPI until the walk finishes. Use lockless offset helpers with the saved parent entries and pass the saved PMD to pte_offset_map().