Changeset View
Changeset View
Standalone View
Standalone View
sys/amd64/include/vmparam.h
Show First 20 Lines • Show All 163 Lines • ▼ Show 20 Lines | |||||
* 0xfffffe0000000000 - 0xffffffffffffffff 2TB kernel map | * 0xfffffe0000000000 - 0xffffffffffffffff 2TB kernel map | ||||
* | * | ||||
* Within the kernel map: | * Within the kernel map: | ||||
* | * | ||||
* 0xfffffe0000000000 vm_page_array | * 0xfffffe0000000000 vm_page_array | ||||
* 0xffffffff80000000 KERNBASE | * 0xffffffff80000000 KERNBASE | ||||
*/ | */ | ||||
#define VM_MIN_KERNEL_ADDRESS KVADDR(KPML4BASE, 0, 0, 0) | #define VM_MIN_KERNEL_ADDRESS KV4ADDR(KPML4BASE, 0, 0, 0) | ||||
#define VM_MAX_KERNEL_ADDRESS KVADDR(KPML4BASE + NKPML4E - 1, \ | #define VM_MAX_KERNEL_ADDRESS KV4ADDR(KPML4BASE + NKPML4E - 1, \ | ||||
NPDPEPG-1, NPDEPG-1, NPTEPG-1) | NPDPEPG-1, NPDEPG-1, NPTEPG-1) | ||||
#define DMAP_MIN_ADDRESS KVADDR(DMPML4I, 0, 0, 0) | #define DMAP_MIN_ADDRESS KV4ADDR(DMPML4I, 0, 0, 0) | ||||
#define DMAP_MAX_ADDRESS KVADDR(DMPML4I + NDMPML4E, 0, 0, 0) | #define DMAP_MAX_ADDRESS KV4ADDR(DMPML4I + NDMPML4E, 0, 0, 0) | ||||
#define LARGEMAP_MIN_ADDRESS KVADDR(LMSPML4I, 0, 0, 0) | #define LARGEMAP_MIN_ADDRESS KV4ADDR(LMSPML4I, 0, 0, 0) | ||||
#define LARGEMAP_MAX_ADDRESS KVADDR(LMEPML4I + 1, 0, 0, 0) | #define LARGEMAP_MAX_ADDRESS KV4ADDR(LMEPML4I + 1, 0, 0, 0) | ||||
#define KERNBASE KVADDR(KPML4I, KPDPI, 0, 0) | #define KERNBASE KV4ADDR(KPML4I, KPDPI, 0, 0) | ||||
#define UPT_MAX_ADDRESS KVADDR(PML4PML4I, PML4PML4I, PML4PML4I, PML4PML4I) | #define UPT_MAX_ADDRESS KV4ADDR(PML4PML4I, PML4PML4I, PML4PML4I, PML4PML4I) | ||||
#define UPT_MIN_ADDRESS KVADDR(PML4PML4I, 0, 0, 0) | #define UPT_MIN_ADDRESS KV4ADDR(PML4PML4I, 0, 0, 0) | ||||
#define VM_MAXUSER_ADDRESS UVADDR(NUPML4E, 0, 0, 0) | #define VM_MAXUSER_ADDRESS_LA57 UVADDR(NUPML5E, 0, 0, 0, 0) | ||||
#define VM_MAXUSER_ADDRESS_LA48 UVADDR(0, NUP4ML4E, 0, 0, 0) | |||||
#define VM_MAXUSER_ADDRESS VM_MAXUSER_ADDRESS_LA57 | |||||
#define SHAREDPAGE (VM_MAXUSER_ADDRESS - PAGE_SIZE) | #define SHAREDPAGE_LA57 (VM_MAXUSER_ADDRESS_LA57 - PAGE_SIZE) | ||||
#define USRSTACK SHAREDPAGE | #define SHAREDPAGE_LA48 (VM_MAXUSER_ADDRESS_LA48 - PAGE_SIZE) | ||||
#define USRSTACK_LA57 SHAREDPAGE_LA57 | |||||
#define USRSTACK_LA48 SHAREDPAGE_LA48 | |||||
#define USRSTACK USRSTACK_LA48 | |||||
#define PS_STRINGS_LA57 (USRSTACK_LA57 - sizeof(struct ps_strings)) | |||||
#define PS_STRINGS_LA48 (USRSTACK_LA48 - sizeof(struct ps_strings)) | |||||
#define VM_MAX_ADDRESS UPT_MAX_ADDRESS | #define VM_MAX_ADDRESS UPT_MAX_ADDRESS | ||||
#define VM_MIN_ADDRESS (0) | #define VM_MIN_ADDRESS (0) | ||||
/* | /* | ||||
* XXX Allowing dmaplimit == 0 is a temporary workaround for vt(4) efifb's | * XXX Allowing dmaplimit == 0 is a temporary workaround for vt(4) efifb's | ||||
* early use of PHYS_TO_DMAP before the mapping is actually setup. This works | * early use of PHYS_TO_DMAP before the mapping is actually setup. This works | ||||
* because the result is not actually accessed until later, but the early | * because the result is not actually accessed until later, but the early | ||||
▲ Show 20 Lines • Show All 52 Lines • Show Last 20 Lines |