Subject: Cannot Boot Kernels Built from /usr/src
To: None <port-sparc64@netbsd.org>
From: Bill Dorsey <dorsey@lila.com>
List: port-sparc64
Date: 09/27/2003 18:05:54
I'm unable to boot any of the kernels I build under NetBSD 
1.6.1/Sparc64.

Here's what I've tried so far:

1)  cvs update -d -P -r netbsd-1-6 /usr/src
2)  cd /usr/src/sys/arch/sparc64/conf
3)  cp GENERIC TEST
4)  config TEST
5)  cd ../compile/TEST
6)  make depend; make
7)  mv /netbsd /netbsd.old
8)  mv netbsd /netbsd
9)  shutdown -r now

The loader prints the following message on the screen:

Rebooting with command: boot netbsd
Boot device: /pci@1f,0/pci@1,1/ide@3/disk@0,0:a  File and args: netbsd
NetBSD IEEE 1275 Bootblock
..>> NetBSD/sparc64 OpenFirmware Boot, Revision 1.5
 >> (devnull@lila.com, Sat Sep 27 01:53:56 PDT 2003)
loadfile: reading header
unknown executable format
Program terminated

Subsequent to this, I've tried several additional things:

1)  fsck all filesystems (everything was fine)
2)  cd /usr/src; build.sh (took a long time, but at least I got all 
those security updates installed now...)
3)  try building the kernel again with the new userland
4)  run /usr/mdec/binstall to install new bootloaders

None of the above steps enabled me to successfully boot anything other 
than the original kernel from the distribution sets.

It looks like someone had a similar problem on this mailing list this 
past May, but he said he solved the problem by switching to SCSI disks 
from IDE disks.  I don't have that option on my hardware.

Running 'file' on both kernels shows the same thing:

netbsd:               ELF 64-bit MSB executable, SPARC V9, version 1 
(SYSV), statically linked, not stripped

Briefly examining both kernels with objdump doesn't show anything I 
would regard as significant differences.

Anyone have any thoughts for what to try next?

--
Bill Dorsey
dorseyATlilaDOTcom