diff --git a/sys/amd64/include/param.h b/sys/amd64/include/param.h index 9a742f94e9b..74d4d21827b 100644 --- a/sys/amd64/include/param.h +++ b/sys/amd64/include/param.h @@ -64,7 +64,9 @@ #endif #if defined(SMP) || defined(KLD_MODULE) +#ifndef MAXCPU #define MAXCPU 32 +#endif #else #define MAXCPU 1 #endif diff --git a/sys/arm/include/param.h b/sys/arm/include/param.h index 1694bc43c5e..96a70388f1f 100644 --- a/sys/arm/include/param.h +++ b/sys/arm/include/param.h @@ -61,7 +61,9 @@ #define MID_MACHINE MID_ARM6 #if defined(SMP) || defined(KLD_MODULE) +#ifndef MAXCPU #define MAXCPU 2 +#endif #else #define MAXCPU 1 #endif /* SMP || KLD_MODULE */ diff --git a/sys/conf/NOTES b/sys/conf/NOTES index d3951e34fc2..0753c1d5c46 100644 --- a/sys/conf/NOTES +++ b/sys/conf/NOTES @@ -213,6 +213,10 @@ options SCHED_STATS # Mandatory: options SMP # Symmetric MultiProcessor Kernel +# MAXCPU defines the maximum number of CPUs that can boot in the system. +# A default value should be already present, for every architecture. +options MAXCPU=32 + # ADAPTIVE_MUTEXES changes the behavior of blocking mutexes to spin # if the thread that currently owns the mutex is executing on another # CPU. This behaviour is enabled by default, so this option can be used diff --git a/sys/conf/options b/sys/conf/options index 9f1ac80dbb9..b8f9958ca6f 100644 --- a/sys/conf/options +++ b/sys/conf/options @@ -570,6 +570,7 @@ DFLTPHYS opt_global.h DIAGNOSTIC opt_global.h INVARIANT_SUPPORT opt_global.h INVARIANTS opt_global.h +MAXCPU opt_global.h MAXPHYS opt_global.h MCLSHIFT opt_global.h MUTEX_DEBUG opt_global.h diff --git a/sys/i386/include/param.h b/sys/i386/include/param.h index d95fcf3fd08..6a0495c4c95 100644 --- a/sys/i386/include/param.h +++ b/sys/i386/include/param.h @@ -68,7 +68,9 @@ #define MID_MACHINE MID_I386 #if defined(SMP) || defined(KLD_MODULE) +#ifndef MAXCPU #define MAXCPU 32 +#endif #else #define MAXCPU 1 #endif /* SMP || KLD_MODULE */ diff --git a/sys/ia64/include/param.h b/sys/ia64/include/param.h index 36b27e04890..a3684ab09e3 100644 --- a/sys/ia64/include/param.h +++ b/sys/ia64/include/param.h @@ -62,7 +62,9 @@ #endif #if defined(SMP) || defined(KLD_MODULE) +#ifndef MAXCPU #define MAXCPU 32 +#endif #else #define MAXCPU 1 #endif diff --git a/sys/mips/include/param.h b/sys/mips/include/param.h index 0b1ea9837af..5f25c81c98f 100644 --- a/sys/mips/include/param.h +++ b/sys/mips/include/param.h @@ -87,7 +87,9 @@ #ifdef SMP #define MAXSMPCPU 32 +#ifndef MAXCPU #define MAXCPU MAXSMPCPU +#endif #else #define MAXSMPCPU 1 #define MAXCPU 1 diff --git a/sys/powerpc/include/param.h b/sys/powerpc/include/param.h index 06b131c2a67..f95cc089472 100644 --- a/sys/powerpc/include/param.h +++ b/sys/powerpc/include/param.h @@ -68,7 +68,9 @@ #endif #if defined(SMP) || defined(KLD_MODULE) +#ifndef MAXCPU #define MAXCPU 8 +#endif #else #define MAXCPU 1 #endif /* SMP || KLD_MODULE */ diff --git a/sys/sparc64/include/param.h b/sys/sparc64/include/param.h index af026b293f2..9d11a2fc11e 100644 --- a/sys/sparc64/include/param.h +++ b/sys/sparc64/include/param.h @@ -50,7 +50,9 @@ #define MID_MACHINE MID_SPARC64 #if defined(SMP) || defined(KLD_MODULE) +#ifndef MAXCPU #define MAXCPU 16 +#endif #else #define MAXCPU 1 #endif /* SMP || KLD_MODULE */