summaryrefslogtreecommitdiffstats
path: root/sys/arch/sparc
diff options
context:
space:
mode:
Diffstat (limited to 'sys/arch/sparc')
-rw-r--r--sys/arch/sparc/include/param.h7
-rw-r--r--sys/arch/sparc/sparc/autoconf.c13
2 files changed, 16 insertions, 4 deletions
diff --git a/sys/arch/sparc/include/param.h b/sys/arch/sparc/include/param.h
index 1063d837476..5987f2050c6 100644
--- a/sys/arch/sparc/include/param.h
+++ b/sys/arch/sparc/include/param.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: param.h,v 1.30 2005/07/31 15:31:17 miod Exp $ */
+/* $OpenBSD: param.h,v 1.31 2005/09/12 23:05:05 miod Exp $ */
/* $NetBSD: param.h,v 1.29 1997/03/10 22:50:37 pk Exp $ */
/*
@@ -109,8 +109,9 @@
* Minimum and maximum sizes of the kernel malloc arena in PAGE_SIZE-sized
* logical pages.
*/
-#define NKMEMPAGES_MIN_DEFAULT ((6 * 1024 * 1024) >> PAGE_SHIFT)
-#define NKMEMPAGES_MAX_DEFAULT ((6 * 1024 * 1024) >> PAGE_SHIFT)
+#define NKMEMPAGES_MIN_DEFAULT ((4 * 1024 * 1024) >> PAGE_SHIFT)
+#define NKMEMPAGES_MAX_DEFAULT ((8 * 1024 * 1024) >> PAGE_SHIFT)
+#define NKMEMPAGES_MAX_DEFAULT_SUN4M ((64 * 1024 * 1024) >> PAGE_SHIFT)
/* pages ("clicks") to disk blocks */
#define ctod(x) ((x) << (PGSHIFT - DEV_BSHIFT))
diff --git a/sys/arch/sparc/sparc/autoconf.c b/sys/arch/sparc/sparc/autoconf.c
index 357ef31b836..351c267fbb6 100644
--- a/sys/arch/sparc/sparc/autoconf.c
+++ b/sys/arch/sparc/sparc/autoconf.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: autoconf.c,v 1.67 2005/05/01 18:15:46 miod Exp $ */
+/* $OpenBSD: autoconf.c,v 1.68 2005/09/12 23:05:05 miod Exp $ */
/* $NetBSD: autoconf.c,v 1.73 1997/07/29 09:41:53 fair Exp $ */
/*
@@ -221,6 +221,17 @@ bootstrap()
ddb_init();
#endif
+#if defined(SUN4M)
+ /*
+ * Allow a larger kernel malloc space on sun4m.
+ */
+ if (CPU_ISSUN4M) {
+ extern u_int nkmempages_max;
+
+ nkmempages_max = NKMEMPAGES_MAX_DEFAULT_SUN4M;
+ }
+#endif
+
/*
* On sun4ms we have to do some nasty stuff here. We need to map
* in the interrupt registers (since we need to find out where