From e5ca0e1dcd02caa0b317dee4aeb1c59e577bf3c1 Mon Sep 17 00:00:00 2001 From: Mark Johnston Date: Tue, 22 Nov 2022 13:01:09 -0500 Subject: [PATCH 18/52] vm: Enable a larger MAXPAGESIZES value - Widen the split boundary mask to 3 bits, so as to accommodate up to seven page sizes. - Similarly widen the mincore mask for the page size index. --- sys/sys/mman.h | 2 +- sys/vm/vm_map.h | 6 +++--- sys/vm/vm_mmap.c | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/sys/sys/mman.h b/sys/sys/mman.h index 6843e4aa29d0..3a6ccad8e3e3 100644 --- a/sys/sys/mman.h +++ b/sys/sys/mman.h @@ -165,7 +165,7 @@ #define MINCORE_MODIFIED 0x4 /* Page has been modified by us */ #define MINCORE_REFERENCED_OTHER 0x8 /* Page has been referenced */ #define MINCORE_MODIFIED_OTHER 0x10 /* Page has been modified */ -#define MINCORE_SUPER 0x60 /* Page is a "super" page */ +#define MINCORE_SUPER 0xe0 /* Page is a "super" page */ #define MINCORE_PSIND(i) (((i) << 5) & MINCORE_SUPER) /* Page size */ /* diff --git a/sys/vm/vm_map.h b/sys/vm/vm_map.h index ecb6f4914e0e..62902b44f870 100644 --- a/sys/vm/vm_map.h +++ b/sys/vm/vm_map.h @@ -152,11 +152,11 @@ struct vm_map_entry { #define MAP_ENTRY_STACK_GAP_UP 0x00040000 #define MAP_ENTRY_HEADER 0x00080000 -#define MAP_ENTRY_SPLIT_BOUNDARY_MASK 0x00300000 +#define MAP_ENTRY_SPLIT_BOUNDARY_MASK 0x00700000 #define MAP_ENTRY_SPLIT_BOUNDARY_SHIFT 20 #ifdef JUNIPER_BUILD -#define MAP_ENTRY_COREDUMP 0x00400000 /* map segment in coredump */ +#define MAP_ENTRY_COREDUMP 0x80000000 /* map segment in coredump */ #endif #ifdef _KERNEL @@ -379,7 +379,7 @@ long vmspace_resident_count(struct vmspace *vmspace); #define MAP_CREATE_STACK_GAP_UP 0x00010000 #define MAP_CREATE_STACK_GAP_DN 0x00020000 #define MAP_VN_EXEC 0x00040000 -#define MAP_SPLIT_BOUNDARY_MASK 0x00180000 +#define MAP_SPLIT_BOUNDARY_MASK 0x00380000 #define MAP_SPLIT_BOUNDARY_SHIFT 19 #ifdef JUNIPER_BUILD diff --git a/sys/vm/vm_mmap.c b/sys/vm/vm_mmap.c index fb74f11753ff..474353a4c831 100644 --- a/sys/vm/vm_mmap.c +++ b/sys/vm/vm_mmap.c @@ -105,7 +105,7 @@ SYSCTL_INT(_vm, OID_AUTO, mincore_mapped, CTLFLAG_RWTUN, &mincore_mapped, 0, #define MAP_32BIT_MAX_ADDR ((vm_offset_t)1 << 31) #endif -_Static_assert(MAXPAGESIZES <= 4, "MINCORE_SUPER too narrow"); +_Static_assert(MAXPAGESIZES <= 8, "MINCORE_SUPER too narrow"); #ifndef _SYS_SYSPROTO_H_ struct sbrk_args { -- 2.41.0