Subject: Re: E250 support and failed boot
To: Eduardo Horvath <eeh@turbolinux.com>
From: Mark Blackman <mark.blackman@dircon.net>
List: port-sparc64
Date: 08/30/2000 15:30:26
> Hm.  Looks like the error occurred from 
> confaddr_ok().  confaddr_ok() should be using probeget() to access the
> address.  The pointer to the trapframe causing that problem should be the
> second argument to data_access_error, so you can dump it with `mach tf
> fe037010'.
> 
> Anyway, probeget should be able to safely access bad memory
> locations.  Looks like a bug in probeget().  Let me fix that real quick.
> 
> O.K.  I updated: 
> 
> 	ftp.netbsd.org:/pub/NetBSD/arch/sparc64/other/netbsd.bootdebug
> 
> with another fix.  Give it a try.
> 
> Eduardo Horvath				   

same problem, same address.  'trace' and 'mach tf' follow at
end of verboseness.

**********************

loadfile: reading header
elf64_exec: Booting /pci@1f,4000/network@1,1/netbsd
3008047@0xf1000000+420648@0xf1400000+434112@0xf1466b28
symbols @ 0xfefa6340 84+241392+124005 start=0xf1000000
chain: calling OF_chain(800000, ef18, f1000000, fff89a80, 18)
[ using 366320 bytes of netbsd ELF symbol table ]
Entered pmap_bootstrap.
Available virutal memory:
memlist start 0xfffff80000000000 size 7fc00000000
memlist start 0x100000000 size 7ff00000000
memlist start 0xffff0000 size e000
memlist start 0x0 size f0000000
memlist start 0xfff6c000 size a000
memlist start 0xfff00000 size 52000
memlist start 0xf14d2000 size dad4000
memlist start 0xf12e0000 size 120000
End of available virutal memory
Trying to allocate msgbuf at fe006000, size 8000
prom_get_msgbuf: Cannot recover msgbuf on E250
prom_get_msgbuf: allocated new buf at 00000000
prom_get_msgbuf: claiming new buf at 00000000
We should have the memory at 0, let's map it in
msgbuf mapped at 0xfe006000
translating kernelstart 0xf1000000
The kernel data is mapped at f1400000, next free seg: f14d2000, dad4000
pmap_bootstrap: could not claim physical dseg extention at 3fcd2000 size 32e000
Allocating new d2000 kernel data at 4MB boundary
Allocating new va for buffer at 0x3f400000
Mapping in buffer 3f400000 at 0
Copying 860160 bytes kernel data...done.  Swapping maps..unmap new
remap old free old
pmap_bootstrap: firstaddr is f14d0ae8 virt (3f4d0000 phys)avail for kernel
pmap_bootstrap: getting phys installed
Installed physical memory:
memlist start 0 size 20000000
memlist start 20000000 size 20000000
Calculating physmem: result 20000 or 131072 pages
Prom xlations:
start 00000000fffe0000 size 0000000000010000 tte 800000003fef00b6
start 00000000fffd4000 size 000000000000c000 tte 800000003fedc0b6
start 00000000fffce000 size 0000000000002000 tte 800001fe0000208e
start 00000000fffcc000 size 0000000000002000 tte 800001fe0180008e
start 00000000fffbe000 size 000000000000e000 tte 800001fe0000008e
start 00000000fffbc000 size 0000000000002000 tte 800001fe0000408e
start 00000000fffba000 size 0000000000002000 tte 800001fe0100008e
start 00000000fffac000 size 000000000000e000 tte 800001fe0000008e
start 00000000fffa8000 size 0000000000004000 tte 800000003fed80b6
start 00000000fffa6000 size 0000000000002000 tte 800001fe0000008e
start 00000000fffa4000 size 0000000000002000 tte 800001fe0000008e
start 00000000fffa2000 size 0000000000002000 tte 800001fe0000008e
start 00000000fffa0000 size 0000000000002000 tte 800001fff100008e
start 00000000fff9e000 size 0000000000002000 tte 800001fff100008e
start 00000000fff9c000 size 0000000000002000 tte 800001fff150008e
start 00000000fff9a000 size 0000000000002000 tte 800001fff172608e
start 00000000fff98000 size 0000000000002000 tte 800001fff172808e
start 00000000fff96000 size 0000000000002000 tte 800001fff172a08e
start 00000000fff94000 size 0000000000002000 tte 800001fff172c08e
start 00000000fff92000 size 0000000000002000 tte 800001fff172e08e
start 00000000fff90000 size 0000000000002000 tte 800001fff130808e
start 00000000fff8c000 size 0000000000004000 tte 800000003fed20b6
start 00000000fff8a000 size 0000000000002000 tte 800000003fdfe0b6
start 00000000fff88000 size 0000000000002000 tte 800000003fed00b6
start 00000000fff86000 size 0000000000002000 tte 800001fff130208e
start 00000000fff84000 size 0000000000002000 tte 800001fff170608e
start 00000000fff82000 size 0000000000002000 tte 800001fff172008e
start 00000000fff80000 size 0000000000002000 tte 800001fff130208e
start 00000000fff7e000 size 0000000000002000 tte 800001fff130208e
start 00000000fff7c000 size 0000000000002000 tte 800001fff120008e
start 00000000fff7a000 size 0000000000002000 tte 800001fff140008e
start 00000000fff76000 size 0000000000004000 tte 800000003febe0b6
start 00000000fff6a000 size 0000000000002000 tte 800000003feca0b6
start 00000000fff54000 size 0000000000016000 tte 800000003fe8a0b6
start 00000000fff52000 size 0000000000002000 tte 800000003fe860b6
start 00000000ffef8000 size 0000000000008000 tte 800000003fec20b6
start 00000000fefa6000 size 000000000005a000 tte 800000003fe2c0b6
start 00000000fe006000 size 0000000000008000 tte 80000000000000b6
start 00000000f1400000 size 0000000000400000 tte 800000003f4000b6
start 00000000f1000000 size 00000000002e0000 tte 800000003f8000b6
start 00000000f0000000 size 0000000000100000 tte 800000003ff000b6
start 0000000000400000 size 0000000000600000 tte 8000000000400036
End of prom xlations
Prom xlations:
start 00000000fffe0000 size 0000000000010000 tte 800000003fef00b6
start 00000000fffd4000 size 000000000000c000 tte 800000003fedc0b6
start 00000000fffce000 size 0000000000002000 tte 800001fe0000208e
start 00000000fffcc000 size 0000000000002000 tte 800001fe0180008e
start 00000000fffbe000 size 000000000000e000 tte 800001fe0000008e
start 00000000fffbc000 size 0000000000002000 tte 800001fe0000408e
start 00000000fffba000 size 0000000000002000 tte 800001fe0100008e
start 00000000fffac000 size 000000000000e000 tte 800001fe0000008e
start 00000000fffa8000 size 0000000000004000 tte 800000003fed80b6
start 00000000fffa6000 size 0000000000002000 tte 800001fe0000008e
start 00000000fffa4000 size 0000000000002000 tte 800001fe0000008e
start 00000000fffa2000 size 0000000000002000 tte 800001fe0000008e
start 00000000fffa0000 size 0000000000002000 tte 800001fff100008e
start 00000000fff9e000 size 0000000000002000 tte 800001fff100008e
start 00000000fff9c000 size 0000000000002000 tte 800001fff150008e
start 00000000fff9a000 size 0000000000002000 tte 800001fff172608e
start 00000000fff98000 size 0000000000002000 tte 800001fff172808e
start 00000000fff96000 size 0000000000002000 tte 800001fff172a08e
start 00000000fff94000 size 0000000000002000 tte 800001fff172c08e
start 00000000fff92000 size 0000000000002000 tte 800001fff172e08e
start 00000000fff90000 size 0000000000002000 tte 800001fff130808e
start 00000000fff8c000 size 0000000000004000 tte 800000003fed20b6
start 00000000fff8a000 size 0000000000002000 tte 800000003fdfe0b6
start 00000000fff88000 size 0000000000002000 tte 800000003fed00b6
start 00000000fff86000 size 0000000000002000 tte 800001fff130208e
start 00000000fff84000 size 0000000000002000 tte 800001fff170608e
start 00000000fff82000 size 0000000000002000 tte 800001fff172008e
start 00000000fff80000 size 0000000000002000 tte 800001fff130208e
start 00000000fff7e000 size 0000000000002000 tte 800001fff130208e
start 00000000fff7c000 size 0000000000002000 tte 800001fff120008e
start 00000000fff7a000 size 0000000000002000 tte 800001fff140008e
start 00000000fff76000 size 0000000000004000 tte 800000003febe0b6
start 00000000fff6a000 size 0000000000002000 tte 800000003feca0b6
start 00000000fff54000 size 0000000000016000 tte 800000003fe8a0b6
start 00000000fff52000 size 0000000000002000 tte 800000003fe860b6
start 00000000ffef8000 size 0000000000008000 tte 800000003fec20b6
start 00000000fefa6000 size 000000000005a000 tte 800000003fe2c0b6
start 00000000fe006000 size 0000000000008000 tte 80000000000000b6
start 00000000f0000000 size 0000000000100000 tte 800000003ff000b6
start 0000000000400000 size 0000000000600000 tte 8000000000400036
start 0000000000000000 size 0000000000000000 tte 800000003f4000b6
start 0000000000000000 size 0000000000000000 tte 800000003f8000b6
End of prom xlations
Available physical memory:
memlist start 3feb0000 size c000
memlist start 3fe00000 size 2c000
memlist start 3fae0000 size 31e000
memlist start 8000 size 3f3f8000
End of available physical memory
firstaddr before TSB=f14e0fb8
frobbed i, firstaddr before TSB=f14e2000, f14e2000
firstaddr after TSB=f14e4000
TSB allocated at 0xf14e2000 size 00002000
firstaddr after pmap=f14e4000
kernel virtual size f1000000 - f14e4000
kernel virtual size f1000000 - f14d0ae8
Available f14d0f68 physical memory before cleanup:
memlist start 3feb0000 size c000
memlist start 3fe00000 size 2c000
memlist start 3fae0000 size 31e000
memlist start 8000 size 3f3f8000
End of available physical memory before cleanup
kernel physical text size 3f800000 - 3fae0000
kernel physical data size 3f400000 - 3f4e4000
Available physical memory after cleanup:
avail start 8000 size 3f3f8000
avail start 3fae0000 size 31e000
avail start 3fe00000 size 2c000
avail start 3feb0000 size c000
End of available physical memory after cleanup
pmap_kernel()->pm_physaddr = 8000
Calling consinit()
consinit()
setting up stdin
stdin instance = fff8d238
setting up stdout
stdout instance = fff8d7f8
stdout package = f006eca8
console is unknown
Inserting mesgbuf into pmap_kernel()
pseg_set: pm=0xf14d0ab8 va=0xfe006000 data=8000000000000036 newp a000
pseg_set: pm=0xf14d0ab8 va=0xfe006000 data=8000000000000036 newp c000
pseg_set: pm=0xf14d0ab8 va=0x0 data=9000000000000034 newp e000
Done inserting mesgbuf into pmap_kernel()
Inserting PROM mappings into pmap_kernel()
pseg_set: pm=0xf14d0ab8 va=0xfffe0000 data=800000003fef00b6 newp 10000
pseg_set: pm=0xf14d0ab8 va=0xfefa6000 data=800000003fe2c0b6 newp 12000
pseg_set: pm=0xf14d0ab8 va=0xf0000000 data=800000003ff000b6 newp 14000
pseg_set: pm=0xf14d0ab8 va=0x800000 data=8000000000800036 newp 16000
Done inserting PROM mappings into pmap_kernel()
Inserting stack 0 into pmap_kernel() at 0xf1802000
pseg_set: pm=0xf14d0ab8 va=0xf1802000 data=8000000000018036 newp 1a000
Done inserting stack 0 into pmap_kernel()
Inserting cpu_info into pmap_kernel() at 0xf1812000
Initializing cpu_info
Done inserting cpu_info into pmap_kernel()
Finished pmap_bootstrap()
Our trap handler is enabled
consinit()
setting up stdin
stdin instance = fff8d238
setting up stdout
stdout instance = fff8d7f8
stdout package = f006eca8
console is unknown
Copyright (c) 1996, 1997, 1998, 1999, 2000
    The NetBSD Foundation, Inc.  All rights reserved.
Copyright (c) 1982, 1986, 1989, 1991, 1993
    The Regents of the University of California.  All rights reserved.

pmap_virtual_space: f1820000-fe000000
pmap_init()
NetBSD 1.5E (GENERIC) #200: Mon Aug 28 09:46:26 PDT 2000
    eeh@ehorvath:/home2/src/sys/arch/sparc64/compile/GENERIC
total memory = 1024 MB
avail memory = 937 MB
using 832 buffers containing 52528 KB of memory
bootpath: /pci@1f,4000/network@1,1
mainbus0 (root): SUNW,Ultra-250
cpu0 at mainbus0
cpu0: device_register: bpname pci((null))
instance_match: mainbus device, want 0 have 0x1f
: SUNW,UltraSPARC-II @ 296 MHz, version 0 FPU
cpu0: physical 4K instruction (32 b/l), 4K data (32 b/l), 2048K external (64 b/l)
psycho0 at mainbus0 addr 0xfffbc000
psycho0: device_register: bpname pci((null))
instance_match: mainbus device, want 0x1f have 0x1f
        -- found bus controller psycho0

psycho: impl 0, version 4: bus range 0 to 0; PCI bus 0
DVMA map: fe002000 to ffffe000
pci0 at psycho0
pci0: device_register: bpname network((null))
instance_match: mainbus device, want 0 have 0x1

pci0: i/o space, memory space enabled
Sun Microsystems product 0x8000 (host bridge) at pci0 dev 0 function 0 not configured
ebus0 at pci0 dev 1 function 0
ebus0: device_register: bpname network((null))
instance_match: pci device, want dev 0x1 fn 0x1 have dev 0x1 fn 0

ebus0: Sun Microsystems PCIO Ebus2, revision 0x01
auxio0 at ebus0 addr 726000-726003 addr 728000-728003 addr 72a000-72a003 addr 72c000-72c003 addr
72f000-72f003
auxio0: device_register: bpname network()

power at ebus0 addr 724000-724003 not configured
SUNW,pll at ebus0 addr 504000-504002 not configured
sc at ebus0 addr 500000-500007 not configured
se at ebus0 addr 400000-40007f ipl 43 not configured
se at ebus0 addr 200000-20007f ipl 35 not configured
com0 at ebus0 addr 3083f8-3083ff ipl 41
com0: device_register: bpname network()

: ns16550a, working fifo
com1 at ebus0 addr 3062f8-3062ff ipl 42
com1: device_register: bpname network()

: ns16550a, working fifo
lpt0 at ebus0 addr 3043bc-3043cb addr 300398-300399 addr 700000-70000f ipl 34
lpt0: device_register: bpname network()

clock0 at ebus0 addr 0-1fff
clock0: device_register: bpname network()
: mk48t59: hostid ffffffff80cfd209
flashprom at ebus0 addr 0-fffff addr 0-fffff not configured
SUNW,envctrltwo at ebus0 addr 600000-600003 ipl 40 ipl 37 not configured
hme1 at pci0 dev 1 function 1
hme1: device_register: bpname network((null))
instance_match: pci device, want dev 0x1 fn 0x1 have dev 0x1 fn 0x1
        -- found ethernet controller hme1
: address 08:00:20:cf:d2:09
nsphy0 at hme1 phy 1: DP83840 10/100 media interface, rev. 1
nsphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
hme1: using vector 0 for interrupt
data memory error type 32 sfsr=0x0 sfva=0xfe037010 afsr=0x88000000 afva=0x1fe01000a00 tf=0xf18091
00
panic: trap: memory error
kdb breakpoint at 0xf126d810
Stopped in swapper at   cpu_Debugger+0x4:       nop
db> trace
data_access_error(32, fe037010, 0, 1fe01000a00, f1410000, f1809100) at data_acce
ss_error+0x338
data_error(4008002, 1d, f1802000, 1fe010009ec, 4, 1fe01000a00) at data_error+0x4

confaddr_ok(f270ff00, a00, f1809470, f270bd30, f142c000, 4) at confaddr_ok+0xa8
pci_conf_read(f1425dc8, a00, 0, 200, 50a0000, 0) at pci_conf_read+0x98
pci_probe_bus(f26f3a00, 8, ffff, 2, f26f3d00, f26f3c80) at pci_probe_bus+0x10c
pciattach(f12c2d78, f26f3a00, f18097d0, f1225ac4, f270bf90, f142c000) at pciatta
ch+0x224
config_attach(f26f3a00, f140b300, f18097d0, f270bf90, 0, 0) at config_attach+0x3
5c
config_found_sm(f270ff00, f18097d0, f12318d8, 0, f26f3d00, f26f3e00) at config_f
ound_sm+0x24
psycho_attach(f26f3f00, f270ff00, f1809a90, f12317c8, f270bfc0, 10) at psycho_at
tach+0x100
config_attach(f270ff00, f140b300, f1809a90, f270bfc0, f1809990, 0) at config_att
ach+0x35c
config_found_sm(f26f3f00, f1809a90, f125bb4c, 0, f1809ab0, f12d5c00) at config_f
ound_sm+0x24
mainbus_attach(f12d5e60, f142c260, f12d5e00, f12d5e58, f12d5e48, f12d5e10) at ma
inbus_attach+0x39c
config_attach(f26f3f00, f140b300, 0, f270bff0, f14cc7d0, f1411c00) at config_att
ach+0x35c
config_rootfound(f12d5ce0, 0, f1412468, 20, f26e6600, f1411c00) at config_rootfo
und+0x44
cpu_configure(f14a77d8, f14a77f8, f140b430, f14a8f60, f14133c8, f1411c00) at cpu
_configure+0x3c
configure(f14ca800, f14ca800, f14ca800, f14c8c00, 1, f140b000) at configure+0x50

main(f14a2c00, f14a3000, f14cb400, f14a6400, f142c000, f14d0ad8) at main+0x420
cpu_initialize(fffffffffffffff8, 0, ffffffffffffffff, f007601c, f007601c, f100a9
60) at cpu_initialize+0x388
dostart(800000, f18, f1000000, fff89a80, 18, 18) at dostart+0x110
db> mach tf fe037010
Trapframe 0xfe037010:   tstate: 0xffff00000100  pc: 0x0 npc: 0x0
data memory error type 32 sfsr=0x0 sfva=0xfe037010 afsr=0x84000000 afva=0x1ff8000f030 tf=0xf18084
c0
panic: trap: memory error
kdb breakpoint at 0xf126d810
Stopped in swapper at   cpu_Debugger+0x4:       nop
db>