diff options
author | marcel <marcel@FreeBSD.org> | 2003-09-06 05:15:36 +0000 |
---|---|---|
committer | marcel <marcel@FreeBSD.org> | 2003-09-06 05:15:36 +0000 |
commit | ee8ad8e3cf0b63ea248a6010114bcedead865f10 (patch) | |
tree | 3a73ade9b3b06b65136dcdf753daa119ca833e45 /sys | |
parent | 0960ba26a2cc7682d7ddee7f3238ae4a1c24bd52 (diff) | |
download | FreeBSD-src-ee8ad8e3cf0b63ea248a6010114bcedead865f10.zip FreeBSD-src-ee8ad8e3cf0b63ea248a6010114bcedead865f10.tar.gz |
Load the kernel at a 64M instead of 5M. The advantage of this is that
we can switch to 64M-sized identity mappings and not having to map the
first 64M. This is especially important because the first 1M contains
the VGA frame buffer and is otherwise a legacy memory range. Best to
make as little assumptions about it as possible. Switching to 64M-sized
mappings is important to avoid creating overlapping translations, which
have the side-effect of triggering machine checks. This is currently
what's preventing us to boot on an Intel Tiger 4.
Note that since we currently use 256M-sized identity mappings, we
would reduce the size of the mappings and consequently increase the
TLB pressure. The performance implications of this are minimal if
measurable at all because identify mappings are not our primary
means for memory management.
Also note that there's no guarantee that physical memory exists at
64M. Then again, we didn't had the guarantee when we were loading at
5M. We'll deal with this when it's a problem.
Discussed with: arun@
Diffstat (limited to 'sys')
-rw-r--r-- | sys/conf/ldscript.ia64 | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/conf/ldscript.ia64 b/sys/conf/ldscript.ia64 index 7b6e2f6..a06798b 100644 --- a/sys/conf/ldscript.ia64 +++ b/sys/conf/ldscript.ia64 @@ -3,7 +3,7 @@ OUTPUT_FORMAT("elf64-ia64-little", "elf64-ia64-little", "elf64-ia64-little") OUTPUT_ARCH(ia64) ENTRY(__start) SEARCH_DIR(/usr/lib); -kernel_text = 0xe000000000500000; +kernel_text = 0xe000000004000000; SECTIONS { /* Read-only sections, merged into text segment: */ |