From: rwhron@earthlink.net
To: linux-kernel@vger.kernel.org
Cc: andrea@suse.de
Subject: [PATCH] 1-2-3 GB
Date: Sat, 12 Jan 2002 00:45:28 -0500 [thread overview]
Message-ID: <20020112004528.A159@earthlink.net> (raw)
Patch to have 1-3 GB of virtual memory and not show up as highmem:
Tested on uniprocessor Athlon with 1024 MB RAM and 1027 MB swap.
Caused no LTP (ltp-20020108) regressions.
Did a test like http://marc.theaimsgroup.com/?l=linux-kernel&m=101064072924424&w=2
This time the test completed in 51 minutes (11% faster) and I had setiathome running
the whole time and listened to 12 mp3s sampled at 128k.
dmesg|grep Mem
Memory: 1029848k/1048512k available (1054k kernel code, 18276k reserved, 260k data, 240k init, 0k highmem)
egrep '^CONFIG_HIGH|GB' /usr/src/linux/.config
CONFIG_HIGHMEM4G=y
CONFIG_HIGHMEM=y
# CONFIG_1GB is not set
CONFIG_2GB=y
# CONFIG_3GB is not set
# CONFIG_05GB is not set
uname -a
Linux rushmore 2.4.18pre2aa2-2g #2 Fri Jan 11 22:25:55 EST 2002 i686 unknown
Derived from:
htty://kernelnewbies.org/kernels/rh72/SOURCES/linux-2.4.2-vm-1-2-3-gbyte.patch
Some parts of the patch above are already in the mainline trees.
Patch below applies to 2.4.18pre2aa2:
diff -nur linux.aa2/Rules.make linux/Rules.make
--- linux.aa2/Rules.make Tue Mar 6 22:31:01 2001
+++ linux/Rules.make Fri Jan 11 22:00:57 2002
@@ -212,6 +212,7 @@
#
# Added the SMP separator to stop module accidents between uniprocessor
# and SMP Intel boxes - AC - from bits by Michael Chastain
+# Added separator for different PAGE_OFFSET memory models - Ingo.
#
ifdef CONFIG_SMP
@@ -220,6 +221,22 @@
genksyms_smp_prefix :=
endif
+ifdef CONFIG_2GB
+ifdef CONFIG_SMP
+ genksyms_smp_prefix := -p smp_2gig_
+else
+ genksyms_smp_prefix := -p 2gig_
+endif
+endif
+
+ifdef CONFIG_3GB
+ifdef CONFIG_SMP
+ genksyms_smp_prefix := -p smp_3gig_
+else
+ genksyms_smp_prefix := -p 3gig_
+endif
+endif
+
$(MODINCL)/%.ver: %.c
@if [ ! -r $(MODINCL)/$*.stamp -o $(MODINCL)/$*.stamp -ot $< ]; then \
echo '$(CC) $(CFLAGS) $(EXTRA_CFLAGS) -E -D__GENKSYMS__ $<'; \
diff -nur linux.aa2/arch/i386/config.in linux/arch/i386/config.in
--- linux.aa2/arch/i386/config.in Fri Jan 11 20:57:58 2002
+++ linux/arch/i386/config.in Fri Jan 11 22:20:32 2002
@@ -169,7 +169,11 @@
if [ "$CONFIG_HIGHMEM64G" = "y" ]; then
define_bool CONFIG_X86_PAE y
else
- bool '3.5GB user address space' CONFIG_05GB
+ choice 'Maximum Virtual Memory' \
+ "3GB CONFIG_1GB \
+ 2GB CONFIG_2GB \
+ 1GB CONFIG_3GB \
+ 05GB CONFIG_05GB" 3GB
fi
if [ "$CONFIG_NOHIGHMEM" = "y" ]; then
define_bool CONFIG_NO_PAGE_VIRTUAL y
@@ -179,6 +183,7 @@
bool 'HIGHMEM I/O support (EXPERIMENTAL)' CONFIG_HIGHIO
fi
+
bool 'Math emulation' CONFIG_MATH_EMULATION
bool 'MTRR (Memory Type Range Register) support' CONFIG_MTRR
bool 'Symmetric multi-processing support' CONFIG_SMP
diff -nur linux.aa2/include/asm-i386/page_offset.h linux/include/asm-i386/page_offset.h
--- linux.aa2/include/asm-i386/page_offset.h Fri Jan 11 20:57:58 2002
+++ linux/include/asm-i386/page_offset.h Fri Jan 11 21:20:48 2002
@@ -1,6 +1,10 @@
#include <linux/config.h>
-#ifndef CONFIG_05GB
-#define PAGE_OFFSET_RAW 0xC0000000
-#else
+#ifdef CONFIG_05GB
#define PAGE_OFFSET_RAW 0xE0000000
+#elif defined(CONFIG_1GB)
+#define PAGE_OFFSET_RAW 0xC0000000
+#elif defined(CONFIG_2GB)
+#define PAGE_OFFSET_RAW 0x80000000
+#elif defined(CONFIG_3GB)
+#define PAGE_OFFSET_RAW 0x40000000
#endif
--
Randy Hron
next reply other threads:[~2002-01-12 5:42 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-01-12 5:45 rwhron [this message]
2002-01-12 7:32 ` [PATCH] 1-2-3 GB H. Peter Anvin
2002-01-12 13:17 ` Andrea Arcangeli
2002-01-12 17:26 ` Albert D. Cahalan
2002-01-12 17:42 ` Andrea Arcangeli
2002-01-12 18:28 ` Albert D. Cahalan
2002-01-12 19:07 ` BIO Usage Error or Conflicting Designs Andre Hedrick
2002-01-12 20:05 ` Jens Axboe
2002-01-13 1:15 ` Andre Hedrick
2002-01-13 12:59 ` Jens Axboe
2002-01-13 19:59 ` Andre Hedrick
2002-01-14 6:42 ` Jens Axboe
2002-01-12 20:59 ` [PATCH] 1-2-3 GB H. Peter Anvin
2002-01-12 11:56 ` Andrea Arcangeli
2002-01-12 15:50 ` rwhron
2002-01-12 19:22 ` Hugh Dickins
2002-01-12 21:02 ` Andrew Morton
2002-01-13 20:24 ` H. Peter Anvin
2002-01-13 23:11 ` Marvin Justice
2002-01-14 0:03 ` H. Peter Anvin
2002-01-14 0:46 ` Alan Cox
2002-01-14 2:21 ` Rik van Riel
2002-01-18 21:18 ` Pavel Machek
2002-01-19 0:24 ` Hugh Dickins
2002-01-12 21:41 ` rwhron
2002-01-12 22:34 ` rwhron
-- strict thread matches above, loose matches on Subject: below --
2002-01-15 14:07 rwhron
2002-01-15 17:48 ` Dave Jones
2002-01-16 2:12 ` H. Peter Anvin
2002-01-23 3:53 ` rwhron
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20020112004528.A159@earthlink.net \
--to=rwhron@earthlink.net \
--cc=andrea@suse.de \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.