aboutsummaryrefslogtreecommitdiff
path: root/sys/sun4v
diff options
context:
space:
mode:
authorAlan Cox <alc@FreeBSD.org>2007-05-05 19:50:28 +0000
committerAlan Cox <alc@FreeBSD.org>2007-05-05 19:50:28 +0000
commit04a18977c815b83bf38911871f3c4ca7f881f275 (patch)
tree7aa0cbd313dfa6ace4e0a35a84679f7d3492a165 /sys/sun4v
parent4887800305c8d2e9e6b5fdeb06aa86519e74b0ba (diff)
downloadsrc-04a18977c815b83bf38911871f3c4ca7f881f275.tar.gz
src-04a18977c815b83bf38911871f3c4ca7f881f275.zip
Define every architecture as either VM_PHYSSEG_DENSE or
VM_PHYSSEG_SPARSE depending on whether the physical address space is densely or sparsely populated with memory. The effect of this definition is to determine which of two implementations of vm_page_array and PHYS_TO_VM_PAGE() is used. The legacy implementation is obtained by defining VM_PHYSSEG_DENSE, and a new implementation that trades off time for space is obtained by defining VM_PHYSSEG_SPARSE. For now, all architectures except for ia64 and sparc64 define VM_PHYSSEG_DENSE. Defining VM_PHYSSEG_SPARSE on ia64 allows the entirety of my Itanium 2's memory to be used. Previously, only the first 1 GB could be used. Defining VM_PHYSSEG_SPARSE on sparc64 allows USIIIi-based systems to boot without crashing. This change is a combination of Nathan Whitehorn's patch and my own work in perforce. Discussed with: kmacy, marius, Nathan Whitehorn PR: 112194
Notes
Notes: svn path=/head/; revision=169291
Diffstat (limited to 'sys/sun4v')
-rw-r--r--sys/sun4v/include/vmparam.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/sys/sun4v/include/vmparam.h b/sys/sun4v/include/vmparam.h
index 3b87beace822..6d475f667696 100644
--- a/sys/sun4v/include/vmparam.h
+++ b/sys/sun4v/include/vmparam.h
@@ -78,6 +78,11 @@
#define MAXSLP 20
/*
+ * The physical address space is densely populated.
+ */
+#define VM_PHYSSEG_DENSE
+
+/*
* Address space layout.
*
* UltraSPARC I and II implement a 44 bit virtual address space. The address