On Mon, Mar 29, 1999 at 03:43:16PM +0100, Tony Finch <d...@dotat.at> wrote:
> We have a Quad 400MHz Xeon on evaluation here and we're trying to get
> a large memory configuration working. The machine is running a recent
> 3.1-STABLE with the kva patch from -CURRENT (appended below). When we
> have a working system with 1GB of RAM we'll increase it to 3GB of RAM
> and see how it runs.
> 
> The boot blocks are from 3.0-RELEASE and they will boot the old a.out
> kernel via /boot/loader quite happily. We haven't yet managed to boot
> an ELF kernel, though (but we haven't tried to boot an unpatched one).
> It's also somewhat painful to debug because the machine is miles away
> and its serial console is causing trouble.
> 
> Are there any obvious things we have missed? I assume the kernel load
> address is read by /boot/loader from the kernel's ELF header, so that
> a recent loader can cope. I also assume that the patch included below
> tweaks all of the required knobs.

        Yes, you need to patch load_elf.c -- here is what I have:

nautilus% diff -u load_elf.c /usr/src/sys/boot/common/load_elf.c
--- load_elf.c  Mon Mar 29 07:29:18 1999
+++ /usr/src/sys/boot/common/load_elf.c Mon Jan  4 10:37:41 1999
@@ -229,7 +229,7 @@
     firstaddr = lastaddr = 0;
     if (kernel) {
 #ifdef __i386__
-       off = - (off & 0xff000000u);
+       off = 0x10000000;       /* -0xf0000000  - i386 relocates after locore */
 #else
        off = 0;                /* alpha is direct mapped for kernels */
 #endif


To Unsubscribe: send mail to majord...@freebsd.org
with "unsubscribe freebsd-current" in the body of the message

Reply via email to