Subject: port-sparc64/25429: sparc64 ofwboot fails to load "big" kernel
To: None <gnats-bugs@gnats.NetBSD.org>
From: Stoned Elipot <seb@starfleet.univ-paris7.fr>
List: netbsd-bugs
Date: 05/02/2004 11:43:05
>Number:         25429
>Category:       port-sparc64
>Synopsis:       sparc64's ofwboot fails to load some 1.6.2_STABLE kernels
>Confidential:   no
>Severity:       critical
>Priority:       medium
>Responsible:    port-sparc64-maintainer
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun May 02 09:44:00 UTC 2004
>Closed-Date:
>Last-Modified:
>Originator:     Stoned Elipot
>Release:        NetBSD 1.6.2_STABLE
>Organization:
>Environment:
System: NetBSD chekov 1.6.2_STABLE NetBSD 1.6.2_STABLE (GENERIC) #1: Fri Apr 23 15:51:29 CEST 2004     root@chekov:/u1/branch-1-6/build/sparc64/obj/sys/arch/sparc64/compile/GENERIC sparc64
Architecture: sparc64
Machine: sparc64
>Description:
Ofwboot on the netbsd-1-6 branch seems to fail loading some kernels,
the issue seems to be related to the kernel data+bss size.
Current's ofwboot also fails to load the same troublesome kernels.
Sparc64's GENERIC kernel is loaded fine but a simple simple addition
-see below- to this kernel config makes it failing.
Also notice that a stripped and otherwise failing kernel does boot.
>How-To-Repeat:
# cd /usr/src/sys/arch/sparc64/conf
# cp GENERIC FOO
# echo "pseudo-device vlan" >> FOO
# config FOO
# cd ../compile/FOO
# make depend && make
# make install
# reboot

You should then see something like:

Executing last command: boot                                          
Boot device: disk  File and args: 
NetBSD IEEE 1275 Bootblock
..>> NetBSD/sparc64 OpenFirmware Boot, Revision 1.5
>Fix:
None.
>Release-Note:
>Audit-Trail:
>Unformatted:
 >> (root@chekov, Mon Apr 12 16:33:30 CEST 2004)
 loadfile: reading header
 elf64_exec: Booting /pci@1f,0/ide@d/disk@0,0:a/netbsd
 4438160@0x1000000+140784@0x1800000+4053520@0x18225f0 
 symbols @ 0xfef84300 74+331200+175859Fast Data Access MMU Miss
 ok