HomeFreeBSD

arm64: Support the L3 ATTR_CONTIGUOUS page size in pagesizes[]

Description

arm64: Support the L3 ATTR_CONTIGUOUS page size in pagesizes[]

Update pagesizes[] to include the L3 ATTR_CONTIGUOUS (L3C) page size,
which is 64KB when the base page size is 4KB and 2MB when the base page
size is 16KB.

Add support for L3C pages to shm_create_largepage().

Add support for creating L3C page mappings to pmap_enter(psind=1).

Add support for reporting L3C page mappings to mincore(2) and
procstat(8).

Update vm_fault_soft_fast() and vm_fault_populate() to handle multiple
superpage sizes.

Declare arm64 as supporting two superpage reservation sizes, and
simulate two superpage reservation sizes, updating the vm_page's psind
field to reflect the correct page size from pagesizes[]. (The next
patch in this series will replace this simulation. This patch is
already big enough.)

Co-authored-by: Eliot Solomon <ehs3@rice.edu>
Reviewed by: kib
Differential Revision: https://reviews.freebsd.org/D45766

Details

Provenance
alcAuthored on Jul 12 2024, 7:44 AM
Reviewer
kib
Differential Revision
D45766: arm64: support the ATTR_CONTIGUOUS L3C page size in pagesizes[]
Parents
rGf0d1236f0fc9: libc: Add memset test for int-to-char conversion
Branches
Unknown
Tags
Unknown