Re: ofwboot, why does it work?
Frank Wille <[email protected]> Sun, 21 Sep 2014 13:40:48 +0200
| Newsgroups | gmane.os.netbsd.ports.ofppc |
|---|---|
| Organization | Privates Internet Ostwestfalen/Lippe e.V. |
| Message-ID | <[email protected]> |
On Thu, 18 Sep 2014 22:16:01 +0200 Artyom Tarasenko <[email protected]> wrote: > ok dev /client-services > ok see getprop > [...] > Now it's only unclear why B50 was not affected as well. > Do you by any chance have more OF machines? Today I tested my Powerstack II, which runs FirmWorks. It shows exactly the same code for getprop and copy-out as your emulated FirmWorks machine, and ofwboot 1.12 made it crash. I didn't remember that, but I probably just used an older ofwboot version to continue my tests in the past. The new ofwboot with a 128K stack fixes it, so I committed the code and bumped the version to 1.13. Now I also wanted to test a recent kernel on it, but it fails very early while attaching the cpu. I'm sure it went further in the past and listed all devices, before a problem with PCI I/O- or Mem-space made it unusable. ---8<--- PowerPC Open Firmware Version 1.2 RM11 Thu Jun 4 10:20:43 MST 1998 Copyright Motorola 1995-96, All Rights Reserved Copyright FirmWorks 1995-96, All Rights Reserved CPU . . . . . . . . . . . . . . . . . . . . . . . . . . . =PowerPC,Mach5 MicroProcessor Internal Clock Speed (MHZ) . . . . . . . . =300 MicroProcessor External Clock Speed (MHZ) . . . . . . . . =67 PCI Bus Clock Speed (MHZ) . . . . . . . . . . . . . . . . =33 Local Memory Size . . . . . . . . . . . . . . . . . . . . =4000000 (64 MB) Memory Type . . . . . . . . . . . . . . . . . . . . . . . =EDO Memory Error Checking . . . . . . . . . . . . . . . . . . =ECC Memory Speed. . . . . . . . . . . . . . . . . . . . . . . =60 NS L2 Cache Size . . . . . . . . . . . . . . . . . . . . . . =256KB L2 Cache Type . . . . . . . . . . . . . . . . . . . . . . =Asynchronous L2 Cache Parity . . . . . . . . . . . . . . . . . . . . . =Disabled Configuration Checksum. . . . . . . . . . . . . . . . . . =Failed Type any key to interrupt automatic selftest Rebooting with command: boot /pci/ethernet@4:192.168.0.5,ofwboot,192.168.0.10 Boot device: /pci/ethernet@4:192.168.0.5,ofwboot,192.168.0.10 File and args: \ >> NetBSD/ofppc OpenFirmware Boot, Revision 1.13 (Sun Sep 21 00:44:32 CEST 2014) Using IP address: 192.168.0.10 root addr=192.168.0.5 path=/usr/local/data/export/powerstack/root open /netbsd.ofppc: No such file or directory Using IP address: 192.168.0.10 root addr=192.168.0.5 path=/usr/local/data/export/powerstack/root 3474276+152680 [171936+167715]=0x3c8b38 start=0x100000 powerpc_fixup_stubs: 166 fixups done in 2856021 cycles calling mem_regions regcnt=8 num=1 acell=1 scell=1 mem region 0 start=0 size=4000000 available 00004000 03ddc000 00000000 00000000 regcnt=8 num=1 acell=1 scell=1 to OF_avail 0 avail region 0 start=0x4000 size=0x3ddc000 Loaded initial symtab at 0x475c74, strtab at 0x49fc14, # entries 10727 Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014 The NetBSD Foundation, Inc. All rights reserved. Copyright (c) 1982, 1986, 1989, 1991, 1993 The Regents of the University of California. All rights reserved. NetBSD 7.99.1 (PWRSTK2) #0: Sun Sep 21 00:51:55 CEST 2014 frank@tethys:/home/frank/netbsd/current/src/objofppc/sys/arch/ofppc/compile/PWRSTK2 Model: MOT,PowerStack_II_Pro4000 total memory = 65536 KB avail memory = 57756 KB kern.module.path=/stand/ofppc/7.99.1/modules trap: pid 0.1 (system): kernel ALI trap @ 0x3d80000 by 0x23471c (DSISR 0x17d07) Press a key to panic. ---8<--- The exception is caused by dcbz, while clearing allocated kernel memory: db> bt 0x004ccbb0: at db_panic+0xe8 0x004ccbd0: at vpanic+0x13c 0x004ccc00: at panic+0x4c 0x004ccc40: at trap+0x164 0x004cccd0: kernel ALI trap @ 0x3d80000 (DSISR 0x17d07) pmap_zero_page+0xe8: srr1=0x1032 r1=0x4ccda0 cr=0x42422084 xer=0x20000000 ctr=0x2 0x004ccda0: at pmap_zero_page+0x18 0x004ccdb0: at uvm_pagealloc_strat+0x414 0x004cce10: at uvm_km_alloc+0x1e4 0x004cce70: at softint_init+0x4c 0x004cce90: at mi_cpu_attach+0xdc 0x004cceb0: at main+0x124 0x004ccf10: at 0x1000d0 db> x/i pmap_zero_page+0xe0,6 netbsd:pmap_zero_page+0xe0: addi r9, r0, 0x0 netbsd:pmap_zero_page+0xe4: subf r8, r11, r0 netbsd:pmap_zero_page+0xe8: dcbz r31, r9 netbsd:pmap_zero_page+0xec: dcbz r31, r0 netbsd:pmap_zero_page+0xf0: add r0, r0, r11 netbsd:pmap_zero_page+0xf4: add r9, r9, r11 -- Frank Wille