mirror of
https://github.com/netbirdio/gvisor.git
synced 2026-05-22 17:12:49 -07:00
platform/kvm: limit virtual address space size to 256TB
This is maximum that can be addressed with 4-level paging. PiperOrigin-RevId: 438668768
This commit is contained in:
@@ -84,6 +84,12 @@ var (
|
||||
func Init(fs cpuid.FeatureSet) {
|
||||
// Initialize all sizes.
|
||||
VirtualAddressBits = uintptr(fs.VirtualAddressBits())
|
||||
// TODO(gvisor.dev/issue/7349): introduce support for 5-level paging.
|
||||
// Four-level page tables allows to address up to 48-bit virtual
|
||||
// addresses.
|
||||
if VirtualAddressBits > 48 {
|
||||
VirtualAddressBits = 48
|
||||
}
|
||||
PhysicalAddressBits = uintptr(fs.PhysicalAddressBits())
|
||||
UserspaceSize = uintptr(1) << (VirtualAddressBits - 1)
|
||||
MaximumUserAddress = (UserspaceSize - 1) & ^uintptr(hostarch.PageSize-1)
|
||||
|
||||
Reference in New Issue
Block a user