From da95673165a59cb4afa6d3d67fb9b3d41916c9c2 Mon Sep 17 00:00:00 2001 From: jhb Date: Wed, 10 Mar 2010 19:50:52 +0000 Subject: Make NKPT a kernel option on i386 so that it can be set to a non-default value from kernel config files. Tested by: Charles Sprickman spork of bway net MFC after: 2 weeks --- sys/conf/options.i386 | 1 + sys/i386/conf/NOTES | 9 +++++++++ sys/i386/i386/mp_machdep.c | 1 + sys/i386/xen/mp_machdep.c | 1 + 4 files changed, 12 insertions(+) diff --git a/sys/conf/options.i386 b/sys/conf/options.i386 index 83f8286..333ec6a 100644 --- a/sys/conf/options.i386 +++ b/sys/conf/options.i386 @@ -12,6 +12,7 @@ I586_PMC_GUPROF opt_i586_guprof.h MAXMEM MPTABLE_FORCE_HTT MP_WATCHDOG +NKPT opt_pmap.h PERFMON PMAP_SHPGPERPROC opt_pmap.h POWERFAIL_NMI opt_trap.h diff --git a/sys/i386/conf/NOTES b/sys/i386/conf/NOTES index af3da83..cc62ed9 100644 --- a/sys/i386/conf/NOTES +++ b/sys/i386/conf/NOTES @@ -862,6 +862,15 @@ options PMAP_SHPGPERPROC=201 # options KVA_PAGES=260 +# +# Number of initial kernel page table pages used for early bootstrap. +# This number should include enough pages to map the kernel, any +# modules or other data loaded with the kernel by the loader, and data +# structures allocated before the VM system is initialized such as the +# vm_page_t array. Each page table page maps 4MB (2MB with PAE). +# +options NKPT=31 + ##################################################################### # ABI Emulation diff --git a/sys/i386/i386/mp_machdep.c b/sys/i386/i386/mp_machdep.c index 6729288..716c25e 100644 --- a/sys/i386/i386/mp_machdep.c +++ b/sys/i386/i386/mp_machdep.c @@ -30,6 +30,7 @@ __FBSDID("$FreeBSD$"); #include "opt_cpu.h" #include "opt_kstack_pages.h" #include "opt_mp_watchdog.h" +#include "opt_pmap.h" #include "opt_sched.h" #include "opt_smp.h" diff --git a/sys/i386/xen/mp_machdep.c b/sys/i386/xen/mp_machdep.c index d408e97..76a919f 100644 --- a/sys/i386/xen/mp_machdep.c +++ b/sys/i386/xen/mp_machdep.c @@ -31,6 +31,7 @@ __FBSDID("$FreeBSD$"); #include "opt_cpu.h" #include "opt_kstack_pages.h" #include "opt_mp_watchdog.h" +#include "opt_pmap.h" #include "opt_sched.h" #include "opt_smp.h" -- cgit v1.1