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
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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).