Page MenuHomeFreeBSD

arm64 pmap: allocate leaf page table page for wired userspace superpages
ClosedPublic

Authored by bnovkov on Aug 29 2023, 2:24 PM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, Nov 8, 1:42 AM
Unknown Object (File)
Fri, Nov 1, 2:36 PM
Unknown Object (File)
Fri, Nov 1, 1:17 PM
Unknown Object (File)
Sep 24 2024, 7:35 AM
Unknown Object (File)
Sep 18 2024, 3:56 PM
Unknown Object (File)
Sep 18 2024, 3:17 AM
Unknown Object (File)
Sep 17 2024, 5:07 AM
Unknown Object (File)
Sep 16 2024, 5:40 PM
Subscribers

Details

Summary

This patch fixes a syzkaller issue regarding wired userspace superpages by allocating a leaf page table page for wired userspace superpages.

The original issue is an edge case that creates an unmapped, wired region in userspace. Subsequent faults on this region can trigger wired superpage creation, leading to a panic upon demotion as the pmap does not create a leaf page table page for the wired superpage. D19670 fixed this by disallowing preemptive creation of wired superpage mappings, but that fix is currently interfering with an ongoing effort of speeding up vm_map_wire for large, contiguous entries.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable