Skip to content
  • D Scott Phillips's avatar
    vm_reserv: Sparsify the vm_reserv_array when VM_PHYSSEG_SPARSE · 7988971a
    D Scott Phillips authored
    On an Ampere Altra system, the physical memory is populated
    sparsely within the physical address space, with only about 0.4%
    of physical addresses backed by RAM in the range [0, last_pa].
    
    This is causing the vm_reserv_array to be over-sized by a few
    orders of magnitude, wasting roughly 5 GiB on a system with
    256 GiB of RAM.
    
    The sparse allocation of vm_reserv_array is controlled by defining
    VM_PHYSSEG_SPARSE, with the dense allocation still remaining for
    platforms with VM_PHYSSEG_DENSE.
    
    Reviewed by:	markj, alc, kib
    Approved by:	scottl (implicit)
    MFC after:	1 week
    Sponsored by:	Ampere Computing, Inc.
    Differential Revision:	https://reviews.freebsd.org/D26130
    7988971a