svn commit: r250338 - in head/sys: amd64/include arm/include conf i386/include ia64/include mips/include powerpc/include sparc64/include vm x86/acpica
Attilio Rao
attilio at FreeBSD.org
Tue May 7 22:46:28 UTC 2013
Author: attilio
Date: Tue May 7 22:46:24 2013
New Revision: 250338
URL: http://svnweb.freebsd.org/changeset/base/250338
Log:
Rename VM_NDOMAIN into MAXMEMDOM and move it into machine/param.h in
order to match the MAXCPU concept. The change should also be useful
for consolidation and consistency.
Sponsored by: EMC / Isilon storage division
Obtained from: jeff
Reviewed by: alc
Modified:
head/sys/amd64/include/param.h
head/sys/amd64/include/vmparam.h
head/sys/arm/include/param.h
head/sys/arm/include/vmparam.h
head/sys/conf/NOTES
head/sys/conf/options
head/sys/i386/include/param.h
head/sys/i386/include/vmparam.h
head/sys/ia64/include/param.h
head/sys/ia64/include/vmparam.h
head/sys/mips/include/param.h
head/sys/mips/include/vmparam.h
head/sys/powerpc/include/param.h
head/sys/powerpc/include/vmparam.h
head/sys/sparc64/include/param.h
head/sys/sparc64/include/vmparam.h
head/sys/vm/vm_phys.c
head/sys/x86/acpica/srat.c
Modified: head/sys/amd64/include/param.h
==============================================================================
--- head/sys/amd64/include/param.h Tue May 7 22:05:57 2013 (r250337)
+++ head/sys/amd64/include/param.h Tue May 7 22:46:24 2013 (r250338)
@@ -71,6 +71,10 @@
#define MAXCPU 1
#endif
+#ifndef MAXMEMDOM
+#define MAXMEMDOM 1
+#endif
+
#define ALIGNBYTES _ALIGNBYTES
#define ALIGN(p) _ALIGN(p)
/*
Modified: head/sys/amd64/include/vmparam.h
==============================================================================
--- head/sys/amd64/include/vmparam.h Tue May 7 22:05:57 2013 (r250337)
+++ head/sys/amd64/include/vmparam.h Tue May 7 22:46:24 2013 (r250338)
@@ -121,13 +121,6 @@
#define VM_NFREEORDER 13
/*
- * Only one memory domain.
- */
-#ifndef VM_NDOMAIN
-#define VM_NDOMAIN 1
-#endif
-
-/*
* Enable superpage reservations: 1 level.
*/
#ifndef VM_NRESERVLEVEL
Modified: head/sys/arm/include/param.h
==============================================================================
--- head/sys/arm/include/param.h Tue May 7 22:05:57 2013 (r250337)
+++ head/sys/arm/include/param.h Tue May 7 22:46:24 2013 (r250338)
@@ -80,6 +80,10 @@
#define MAXCPU 1
#endif /* SMP || KLD_MODULE */
+#ifndef MAXMEMDOM
+#define MAXMEMDOM 1
+#endif
+
#define ALIGNBYTES _ALIGNBYTES
#define ALIGN(p) _ALIGN(p)
/*
Modified: head/sys/arm/include/vmparam.h
==============================================================================
--- head/sys/arm/include/vmparam.h Tue May 7 22:05:57 2013 (r250337)
+++ head/sys/arm/include/vmparam.h Tue May 7 22:46:24 2013 (r250338)
@@ -109,13 +109,6 @@
#define VM_NFREEORDER 9
/*
- * Only one memory domain.
- */
-#ifndef VM_NDOMAIN
-#define VM_NDOMAIN 1
-#endif
-
-/*
* Disable superpage reservations.
*/
#ifndef VM_NRESERVLEVEL
Modified: head/sys/conf/NOTES
==============================================================================
--- head/sys/conf/NOTES Tue May 7 22:05:57 2013 (r250337)
+++ head/sys/conf/NOTES Tue May 7 22:46:24 2013 (r250338)
@@ -224,6 +224,10 @@ options SMP # Symmetric MultiProcesso
# A default value should be already present, for every architecture.
options MAXCPU=32
+# MAXMEMDOM defines the maximum number of memory domains that can boot in the
+# system. A default value should already be defined by every architecture.
+options MAXMEMDOM=1
+
# ADAPTIVE_MUTEXES changes the behavior of blocking mutexes to spin
# if the thread that currently owns the mutex is executing on another
# CPU. This behavior is enabled by default, so this option can be used
Modified: head/sys/conf/options
==============================================================================
--- head/sys/conf/options Tue May 7 22:05:57 2013 (r250337)
+++ head/sys/conf/options Tue May 7 22:46:24 2013 (r250338)
@@ -568,6 +568,7 @@ DIAGNOSTIC opt_global.h
INVARIANT_SUPPORT opt_global.h
INVARIANTS opt_global.h
MAXCPU opt_global.h
+MAXMEMDOM opt_global.h
MAXPHYS opt_global.h
MCLSHIFT opt_global.h
MUTEX_DEBUG opt_global.h
@@ -584,7 +585,6 @@ VFS_BIO_DEBUG opt_global.h
VM_KMEM_SIZE opt_vm.h
VM_KMEM_SIZE_SCALE opt_vm.h
VM_KMEM_SIZE_MAX opt_vm.h
-VM_NDOMAIN opt_vm.h
VM_NRESERVLEVEL opt_vm.h
VM_LEVEL_0_ORDER opt_vm.h
NO_SWAPPING opt_vm.h
Modified: head/sys/i386/include/param.h
==============================================================================
--- head/sys/i386/include/param.h Tue May 7 22:05:57 2013 (r250337)
+++ head/sys/i386/include/param.h Tue May 7 22:46:24 2013 (r250338)
@@ -64,6 +64,10 @@
#define MAXCPU 1
#endif /* SMP || KLD_MODULE */
+#ifndef MAXMEMDOM
+#define MAXMEMDOM 1
+#endif
+
#define ALIGNBYTES _ALIGNBYTES
#define ALIGN(p) _ALIGN(p)
/*
Modified: head/sys/i386/include/vmparam.h
==============================================================================
--- head/sys/i386/include/vmparam.h Tue May 7 22:05:57 2013 (r250337)
+++ head/sys/i386/include/vmparam.h Tue May 7 22:46:24 2013 (r250338)
@@ -107,13 +107,6 @@
#endif
/*
- * Only one memory domain.
- */
-#ifndef VM_NDOMAIN
-#define VM_NDOMAIN 1
-#endif
-
-/*
* Enable superpage reservations: 1 level.
*/
#ifndef VM_NRESERVLEVEL
Modified: head/sys/ia64/include/param.h
==============================================================================
--- head/sys/ia64/include/param.h Tue May 7 22:05:57 2013 (r250337)
+++ head/sys/ia64/include/param.h Tue May 7 22:46:24 2013 (r250338)
@@ -69,6 +69,10 @@
#define MAXCPU 1
#endif
+#ifndef MAXMEMDOM
+#define MAXMEMDOM 1
+#endif
+
#define ALIGNBYTES _ALIGNBYTES
#define ALIGN(p) _ALIGN(p)
/*
Modified: head/sys/ia64/include/vmparam.h
==============================================================================
--- head/sys/ia64/include/vmparam.h Tue May 7 22:05:57 2013 (r250337)
+++ head/sys/ia64/include/vmparam.h Tue May 7 22:46:24 2013 (r250338)
@@ -103,13 +103,6 @@
#define VM_NFREEORDER 16
/*
- * Only one memory domain.
- */
-#ifndef VM_NDOMAIN
-#define VM_NDOMAIN 1
-#endif
-
-/*
* Disable superpage reservations.
*/
#ifndef VM_NRESERVLEVEL
Modified: head/sys/mips/include/param.h
==============================================================================
--- head/sys/mips/include/param.h Tue May 7 22:05:57 2013 (r250337)
+++ head/sys/mips/include/param.h Tue May 7 22:46:24 2013 (r250338)
@@ -101,6 +101,10 @@
#define MAXCPU 1
#endif
+#ifndef MAXMEMDOM
+#define MAXMEMDOM 1
+#endif
+
/*
* Round p (pointer or byte index) up to a correctly-aligned value for all
* data types (int, long, ...). The result is u_int and must be cast to
Modified: head/sys/mips/include/vmparam.h
==============================================================================
--- head/sys/mips/include/vmparam.h Tue May 7 22:05:57 2013 (r250337)
+++ head/sys/mips/include/vmparam.h Tue May 7 22:46:24 2013 (r250338)
@@ -101,13 +101,6 @@
#endif
/*
- * Only one memory domain.
- */
-#ifndef VM_NDOMAIN
-#define VM_NDOMAIN 1
-#endif
-
-/*
* Disable superpage reservations. (not sure if this is right
* I copied it from ARM)
*/
Modified: head/sys/powerpc/include/param.h
==============================================================================
--- head/sys/powerpc/include/param.h Tue May 7 22:05:57 2013 (r250337)
+++ head/sys/powerpc/include/param.h Tue May 7 22:46:24 2013 (r250338)
@@ -75,6 +75,10 @@
#define MAXCPU 1
#endif /* SMP || KLD_MODULE */
+#ifndef MAXMEMDOM
+#define MAXMEMDOM 1
+#endif
+
#define ALIGNBYTES _ALIGNBYTES
#define ALIGN(p) _ALIGN(p)
/*
Modified: head/sys/powerpc/include/vmparam.h
==============================================================================
--- head/sys/powerpc/include/vmparam.h Tue May 7 22:05:57 2013 (r250337)
+++ head/sys/powerpc/include/vmparam.h Tue May 7 22:46:24 2013 (r250338)
@@ -163,13 +163,6 @@ struct pmap_physseg {
#define VM_NFREEORDER 11
/*
- * Only one memory domain.
- */
-#ifndef VM_NDOMAIN
-#define VM_NDOMAIN 1
-#endif
-
-/*
* Disable superpage reservations.
*/
#ifndef VM_NRESERVLEVEL
Modified: head/sys/sparc64/include/param.h
==============================================================================
--- head/sys/sparc64/include/param.h Tue May 7 22:05:57 2013 (r250337)
+++ head/sys/sparc64/include/param.h Tue May 7 22:46:24 2013 (r250338)
@@ -57,6 +57,10 @@
#define MAXCPU 1
#endif /* SMP || KLD_MODULE */
+#ifndef MAXMEMDOM
+#define MAXMEMDOM 1
+#endif
+
#define INT_SHIFT 2
#define PTR_SHIFT 3
Modified: head/sys/sparc64/include/vmparam.h
==============================================================================
--- head/sys/sparc64/include/vmparam.h Tue May 7 22:05:57 2013 (r250337)
+++ head/sys/sparc64/include/vmparam.h Tue May 7 22:46:24 2013 (r250338)
@@ -106,13 +106,6 @@
#define VM_NFREEORDER 12
/*
- * Only one memory domain.
- */
-#ifndef VM_NDOMAIN
-#define VM_NDOMAIN 1
-#endif
-
-/*
* Enable superpage reservations: 1 level.
*/
#ifndef VM_NRESERVLEVEL
Modified: head/sys/vm/vm_phys.c
==============================================================================
--- head/sys/vm/vm_phys.c Tue May 7 22:05:57 2013 (r250337)
+++ head/sys/vm/vm_phys.c Tue May 7 22:46:24 2013 (r250338)
@@ -63,11 +63,11 @@ __FBSDID("$FreeBSD$");
#include <vm/vm_phys.h>
/*
- * VM_FREELIST_DEFAULT is split into VM_NDOMAIN lists, one for each
+ * VM_FREELIST_DEFAULT is split into MAXMEMDOM lists, one for each
* domain. These extra lists are stored at the end of the regular
* free lists starting with VM_NFREELIST.
*/
-#define VM_RAW_NFREELIST (VM_NFREELIST + VM_NDOMAIN - 1)
+#define VM_RAW_NFREELIST (VM_NFREELIST + MAXMEMDOM - 1)
struct vm_freelist {
struct pglist pl;
@@ -100,7 +100,7 @@ MALLOC_DEFINE(M_FICT_PAGES, "", "");
static struct vm_freelist
vm_phys_free_queues[VM_RAW_NFREELIST][VM_NFREEPOOL][VM_NFREEORDER];
static struct vm_freelist
-(*vm_phys_lookup_lists[VM_NDOMAIN][VM_RAW_NFREELIST])[VM_NFREEPOOL][VM_NFREEORDER];
+(*vm_phys_lookup_lists[MAXMEMDOM][VM_RAW_NFREELIST])[VM_NFREEPOOL][VM_NFREEORDER];
static int vm_nfreelists = VM_FREELIST_DEFAULT + 1;
@@ -116,7 +116,7 @@ static int sysctl_vm_phys_segs(SYSCTL_HA
SYSCTL_OID(_vm, OID_AUTO, phys_segs, CTLTYPE_STRING | CTLFLAG_RD,
NULL, 0, sysctl_vm_phys_segs, "A", "Phys Seg Info");
-#if VM_NDOMAIN > 1
+#if MAXMEMDOM > 1
static int sysctl_vm_phys_lookup_lists(SYSCTL_HANDLER_ARGS);
SYSCTL_OID(_vm, OID_AUTO, phys_lookup_lists, CTLTYPE_STRING | CTLFLAG_RD,
NULL, 0, sysctl_vm_phys_lookup_lists, "A", "Phys Lookup Lists");
@@ -200,7 +200,7 @@ sysctl_vm_phys_segs(SYSCTL_HANDLER_ARGS)
return (error);
}
-#if VM_NDOMAIN > 1
+#if MAXMEMDOM > 1
/*
* Outputs the set of free list lookup lists.
*/
@@ -255,7 +255,7 @@ _vm_phys_create_seg(vm_paddr_t start, vm
#else
seg->first_page = PHYS_TO_VM_PAGE(start);
#endif
-#if VM_NDOMAIN > 1
+#if MAXMEMDOM > 1
if (flind == VM_FREELIST_DEFAULT && domain != 0) {
flind = VM_NFREELIST + (domain - 1);
if (flind >= vm_nfreelists)
@@ -302,7 +302,7 @@ vm_phys_init(void)
{
struct vm_freelist *fl;
int flind, i, oind, pind;
-#if VM_NDOMAIN > 1
+#if MAXMEMDOM > 1
int ndomains, j;
#endif
@@ -347,7 +347,7 @@ vm_phys_init(void)
TAILQ_INIT(&fl[oind].pl);
}
}
-#if VM_NDOMAIN > 1
+#if MAXMEMDOM > 1
/*
* Build a free list lookup list for each domain. All of the
* memory domain lists are inserted at the VM_FREELIST_DEFAULT
@@ -444,7 +444,7 @@ vm_phys_alloc_pages(int pool, int order)
KASSERT(order < VM_NFREEORDER,
("vm_phys_alloc_pages: order %d is out of range", order));
-#if VM_NDOMAIN > 1
+#if MAXMEMDOM > 1
domain = PCPU_GET(domain);
#else
domain = 0;
@@ -925,7 +925,7 @@ vm_phys_alloc_contig(u_long npages, vm_p
int domain, flind, oind, order, pind;
mtx_assert(&vm_page_queue_free_mtx, MA_OWNED);
-#if VM_NDOMAIN > 1
+#if MAXMEMDOM > 1
domain = PCPU_GET(domain);
#else
domain = 0;
Modified: head/sys/x86/acpica/srat.c
==============================================================================
--- head/sys/x86/acpica/srat.c Tue May 7 22:05:57 2013 (r250337)
+++ head/sys/x86/acpica/srat.c Tue May 7 22:46:24 2013 (r250338)
@@ -28,8 +28,6 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
-#include "opt_vm.h"
-
#include <sys/param.h>
#include <sys/bus.h>
#include <sys/kernel.h>
@@ -47,7 +45,7 @@ __FBSDID("$FreeBSD$");
#include <dev/acpica/acpivar.h>
-#if VM_NDOMAIN > 1
+#if MAXMEMDOM > 1
struct cpu_info {
int enabled:1;
int has_memory:1;
@@ -265,7 +263,7 @@ renumber_domains(void)
domains[j] = domains[j - 1];
domains[slot] = mem_info[i].domain;
ndomain++;
- if (ndomain > VM_NDOMAIN) {
+ if (ndomain > MAXMEMDOM) {
printf("SRAT: Too many memory domains\n");
return (EFBIG);
}
@@ -362,4 +360,4 @@ srat_set_cpus(void *dummy)
}
}
SYSINIT(srat_set_cpus, SI_SUB_CPU, SI_ORDER_ANY, srat_set_cpus, NULL);
-#endif /* VM_NDOMAIN > 1 */
+#endif /* MAXMEMDOM > 1 */
More information about the svn-src-head
mailing list