On 2020/07/03 11:29, Paul de Weerd wrote:
> Using the excellent snapshot archive hosted by hostserver.de, I
> bisected old kernels to find out when this was introduced.
> 
> bsd from 2020-06-16-0105 and before boot fine
> bsd from 2020-06-17-0105 and after all stop at 'data_abort+0x68'
> 
> As my RPi isn't set up to do kernel builds, I haven't been able to
> bisect to a specific commit yet.  That may take some time to set up
> (and given the processing power of this cpu, will probably also take
> some time to build).  Given these dates, does anyone have a good
> suggestion for a specific commit I could try reverting once I have a
> build environment set up?
> 
> Looking through source-changes@, this commit by kettenis@ stands out
> as the only one specific to arm64, so it may be involved:
> 
> > CVSROOT:        /cvs
> > Module name:    src
> > Changes by:     kette...@cvs.openbsd.org        2020/06/17 02:00:22
> > 
> > Modified files:
> >         sys/arch/arm64/dev: mainbus.c
> > 
> > Log message:
> > Attach secondary CPUs early.  Since on most machine we need psci(4) to
> > spin op the secondary CPUs, explicitly probe and attach that driver
> > before we attach the CPUs.
> > 
> > This should help with distributing interrupts across CPUs on arm64.
> > 
> > ok patrick@, deraadt@, dlg@
> 
> So I'll try reverting that one first.

Confirmed it is this commit. With that diff only reverted it boots ok.
(I can build on pi4 where I already have a tree checked out which saves
a lot of time ;-)

> | Copyright (c) 1995-2020 OpenBSD. All rights reserved.  
> https://www.OpenBSD.org
> | 
> | OpenBSD 6.7-current (GENERIC) #674: Wed Jul  1 22:35:25 MDT 2020
> |     dera...@arm64.openbsd.org:/usr/src/sys/arch/arm64/compile/GENERIC
> | real mem  = 953556992 (909MB)
> | avail mem = 891949056 (850MB)
> | random: boothowto does not indicate good seed
> | mainbus0 at root: Raspberry Pi 3 Model B Rev 1.2
> | Stopped at      data_abort+0x68:
> | ddb> show panic
> | the kernel did not panic
> | ddb> ps
> |    PID     TID   PPID    UID  S       FLAGS  WAIT          COMMAND
> | *    0       0     -1      0  7     0x10200                swapper
> | ddb> trace
> | 0 at 0xffffff80007ad0e0
> | data_abort() at OF_getproplen+0x38
> | OF_getproplen() at OF_getproplen+0x38
> | OF_getproplen() at mainbus_attach_node+0xa4
> | mainbus_attach_node() at mainbus_attach+0x168
> | mainbus_attach() at config_attach+0x220
> | config_attach() at cpu_configure+0x2c
> | cpu_configure() at main+0x2fc
> | main() at $x.2+0x70
> | 
> | Full serial output included below, plus previous working dmesg.

...
> | booting sd0a:/bsd: 
> \|/-\8439568|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|+1714248/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\+549472|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|+788464/
>  
> [598646-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\+109+1041192|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-+610818\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\]=0xf6c628
> | type 0x0 pa 0x0 va 0x0 pages 0x1 attr 0x8
> | type 0x7 pa 0x1000 va 0x0 pages 0x1ff attr 0x8
> | type 0x2 pa 0x200000 va 0x200000 pages 0x4000 attr 0x8
> | type 0x7 pa 0x4200000 va 0x0 pages 0x3e00 attr 0x8
> | type 0x4 pa 0x8000000 va 0x8000000 pages 0x6 attr 0x8
> | type 0x7 pa 0x8007000 va 0x0 pages 0x30d63 attr 0x8
> | type 0x2 pa 0x38d6a000 va 0x38d6a000 pages 0x4 attr 0x8
...snip 820 lines...
> | type 0x2 pa 0x39b2e000 va 0x39b2e000 pages 0x1458 attr 0x8
> | type 0x5 pa 0x3af86000 va 0x21c3c19000 pages 0x2 attr 0x8000000000000008
> | type 0x2 pa 0x3af88000 va 0x39b2e000 pages 0x78 attr 0x8
> | type 0xb pa 0x3f100000 va 0x21c3c1b000 pages 0x1 attr 0x8000000000000000
> | [ using 2251736 bytes of bsd ELF symbol table ]


FWIW I have many fewer mappings listed

>> OpenBSD/arm64 BOOTAA64 1.0
boot>
booting sd0a:/bsd: 8500324+1714936+554520+791784 
[597611+109+1042968+611760]=0xf6ed68
type 0x0 pa 0x0 va 0x0 pages 0x1 attr 0x8
type 0x7 pa 0x1000 va 0x1000 pages 0x1ff attr 0x8
type 0x2 pa 0x200000 va 0x200000 pages 0x4000 attr 0x8
type 0x7 pa 0x4200000 va 0x4200000 pages 0x3cf6 attr 0x8
type 0x4 pa 0x7ef6000 va 0x7ef6000 pages 0x14 attr 0x8
type 0x7 pa 0x7f0a000 va 0x7f0a000 pages 0x31254 attr 0x8
type 0x2 pa 0x3915e000 va 0x3915e000 pages 0xcaf attr 0x8
type 0x4 pa 0x39e0d000 va 0x39e0d000 pages 0x1 attr 0x8
type 0x2 pa 0x39e0e000 va 0x39e0e000 pages 0x3 attr 0x8
type 0x7 pa 0x39e11000 va 0x39e11000 pages 0x1 attr 0x8
type 0x2 pa 0x39e12000 va 0x39e12000 pages 0x100 attr 0x8
type 0x1 pa 0x39f12000 va 0x39f12000 pages 0x2a attr 0x8
type 0x0 pa 0x39f3c000 va 0x39f3c000 pages 0x7 attr 0x8
type 0x4 pa 0x39f43000 va 0x39f43000 pages 0x1 attr 0x8
type 0x6 pa 0x39f44000 va 0x19df6a7000 pages 0x1 attr 0x8000000000000008
type 0x4 pa 0x39f45000 va 0x39f45000 pages 0x2 attr 0x8
type 0x0 pa 0x39f47000 va 0x39f47000 pages 0x4 attr 0x8
type 0x4 pa 0x39f4b000 va 0x39f4b000 pages 0x2 attr 0x8
type 0x6 pa 0x39f4d000 va 0x19df6b0000 pages 0x1 attr 0x8000000000000008
type 0x2 pa 0x39f4e000 va 0x39f4e000 pages 0x1402 attr 0x8
type 0x5 pa 0x3b350000 va 0x19e0ab3000 pages 0x10 attr 0x8000000000000008
type 0x2 pa 0x3b360000 va 0x3b360000 pages 0xa0 attr 0x8
type 0xb pa 0x3f100000 va 0x19e0ac3000 pages 0x1 attr 0x8000000000000000
[ using 2253416 bytes of bsd ELF symbol table ]
Copyright (c) 1982, 1986, 1989, 1991, 1993
        The Regents of the University of California.  All rights reserved.
Copyright (c) 1995-2020 OpenBSD. All rights reserved.  https://www.OpenBSD.org

OpenBSD 6.7-current (GENERIC.MP) #5: Fri Jul  3 12:30:07 BST 2020
    st...@moo.spacehopper.org:/sys/arch/arm64/compile/GENERIC.MP
real mem  = 957648896 (913MB)
avail mem = 895930368 (854MB)
random: boothowto does not indicate good seed
mainbus0 at root: Raspberry Pi 3 Model B Rev 1.2
panic: uvm_fault failed: 4 esr 96000045 far 40000000
Stopped at      panic+0x150:        TID    PID    UID     PRFLAGS     PFLAGS  C
PU  COMMAND
*     0      0      0     0x10000      0x200    0K swapper
db_enter() at panic+0x14c
panic() at handle_el1h_sync+0x6c
handle_el1h_sync() at data_abort+0x64
data_abort() at handle_el1h_sync+0x6c
handle_el1h_sync() at OF_getproplen+0x38
OF_getproplen() at OF_getproplen+0x38
OF_getproplen() at mainbus_attach_node+0xa4
https://www.openbsd.org/ddb.html describes the minimum info required in bug
reports.  Insufficient info makes it difficult to find and fix bugs.
ddb{0}> sh reg
x0                               0x1
x1                0xffffff8000568154    arm_dflt_splx
x2                                 0
x3                               0xd
x4                0xffffff8000e8f490    initstack+0x45a0
x5                                 0
x6                               0x2
x7                0xffffff8000e8fa90    initstack+0x4ba0
x8                               0x1
x9                0xffffff8000d9e000    $d.72
x10                              0xc
x11                            0x153    $d.0+0xf6
x12               0xffffff8000c52169    digits
x13                       0xffffffff
x14                                0
x15               0xbc77817721b4f1b5
x16                       0xf8c2bf62
x17                       0x73f8a5fb
x18               0xffffff8000e8f500    initstack+0x4610
x19               0xffffff8000c40a43    $d.2+0x26a
x20                            0x100    $d.0+0xa3
x21               0xffffff8000e2c360    kprintf_mutex
x22               0xffffff8000f11000    tcp_debug+0xfdc8
x23               0xffffff8000e8f600    initstack+0x4710
x24                              0xe
x25               0xffffff8000f47968    vmspace0
x26                              0x2
x27               0xffffff8000e8aef0    initstack
x28                         0x400000    __ALIGN_SIZE+0x200000
x29               0xffffff8000e8f5f0    initstack+0x4700
x30               0xffffff8000f432a0    cpu_info_primary
sp                0xffffff8000e8f500    initstack+0x4610
spsr                      0x60000345
elr               0xffffff80008e3a7c    db_enter+0xc
lr                0xffffff8000490cf0    panic+0x150
panic+0x150:



> | Copyright (c) 1982, 1986, 1989, 1991, 1993
> |     The Regents of the University of California.  All rights reserved.
> | Copyright (c) 1995-2020 OpenBSD. All rights reserved.  
> https://www.OpenBSD.org
> | 
> | OpenBSD 6.7-current (GENERIC) #674: Wed Jul  1 22:35:25 MDT 2020
> |     dera...@arm64.openbsd.org:/usr/src/sys/arch/arm64/compile/GENERIC
> | real mem  = 953556992 (909MB)
> | avail mem = 891949056 (850MB)
> | random: boothowto does not indicate good seed
> | mainbus0 at root: Raspberry Pi 3 Model B Rev 1.2
> | Stopped at      data_abort+0x68:
> | ddb> show panic
> | the kernel did not panic
> | ddb> ps
> |    PID     TID   PPID    UID  S       FLAGS  WAIT          COMMAND
> | *    0       0     -1      0  7     0x10200                swapper
> | ddb> trace
> | 0 at 0xffffff80007ad0e0
> | data_abort() at OF_getproplen+0x38
> | OF_getproplen() at OF_getproplen+0x38
> | OF_getproplen() at mainbus_attach_node+0xa4
> | mainbus_attach_node() at mainbus_attach+0x168
> | mainbus_attach() at config_attach+0x220
> | config_attach() at cpu_configure+0x2c
> | cpu_configure() at main+0x2fc
> | main() at $x.2+0x70
> | ddb> bo re
> | rebooting...
> | reboot failed; spinning
> | ----------------------------------------------------------------------
> | 
> | --- previous dmesg ---------------------------------------------------
> | OpenBSD 6.7-current (GENERIC.MP) #615: Tue May 19 20:52:47 MDT 2020
> |     dera...@arm64.openbsd.org:/usr/src/sys/arch/arm64/compile/GENERIC.MP
> | real mem  = 954671104 (910MB)
> | avail mem = 895234048 (853MB)
> | mainbus0 at root: Raspberry Pi 3 Model B Rev 1.2
> | cpu0 at mainbus0 mpidr 0: ARM Cortex-A53 r0p4
> | cpu0: 32KB 64b/line 2-way L1 VIPT I-cache, 32KB 64b/line 4-way L1 D-cache
> | cpu0: 512KB 64b/line 16-way L2 cache
> | efi0 at mainbus0: UEFI 2.0.5
> | efi0: Das U-boot rev 0x0
> | apm0 at mainbus0
> | simplefb0 at mainbus0: 656x416, 32bpp
> | wsdisplay0 at simplefb0 mux 1
> | wsdisplay0: screen 0-5 added (std, vt100 emulation)
> | "system" at mainbus0 not configured
> | "axi" at mainbus0 not configured
> | simplebus0 at mainbus0: "soc"
> | bcmdmac0 at simplebus0: DMA2 DMA4 DMA5 DMA8 DMA9 DMA10
> | bcmintc0 at simplebus0
> | bcmmbox0 at simplebus0
> | bcmgpio0 at simplebus0
> | syscon0 at simplebus0: "syscon"
> | bcmdog0 at simplebus0
> | bcmrng0 at simplebus0
> | pluart0 at simplebus0
> | bcmsdhost0 at simplebus0: 250 MHz base clock
> | sdmmc0 at bcmsdhost0: 4-bit, sd high-speed, mmc high-speed, dma
> | com0 at simplebus0: ns16550, no working fifo
> | com0: console
> | "mmc" at simplebus0 not configured
> | dwctwo0 at simplebus0
> | "firmware" at simplebus0 not configured
> | "power" at simplebus0 not configured
> | "leds" at simplebus0 not configured
> | "fb" at simplebus0 not configured
> | "vchiq" at simplebus0 not configured
> | "thermal" at simplebus0 not configured
> | "local_intc" at simplebus0 not configured
> | "arm-pmu" at simplebus0 not configured
> | "gpiomem" at simplebus0 not configured
> | agtimer0 at simplebus0: tick rate 19200 KHz
> | "virtgpio" at simplebus0 not configured
> | simplebus1 at mainbus0: "clocks"
> | "clock" at simplebus1 not configured
> | "clock" at simplebus1 not configured
> | "clock" at simplebus1 not configured
> | "clock" at simplebus1 not configured
> | "clock" at simplebus1 not configured
> | "clock" at simplebus1 not configured
> | "clock" at simplebus1 not configured
> | cpu1 at mainbus0 mpidr 1: failed to spin up
> | cpu2 at mainbus0 mpidr 2: failed to spin up
> | cpu3 at mainbus0 mpidr 3: failed to spin up
> | usb0 at dwctwo0: USB revision 2.0
> | sdmmc0: can't enable card
> | uhub0 at usb0 configuration 1 interface 0 "Broadcom DWC2 root hub" rev 
> 2.00/1.00 addr 1
> | uhub1 at uhub0 port 1 configuration 1 interface 0 "Standard Microsystems 
> product 0x9514" rev 2.00/2.00 addr 2
> | smsc0 at uhub1 port 1 configuration 1 interface 0 "Standard Microsystems 
> SMSC9512/14" rev 2.00/2.00 addr 3
> | smsc0: address b8:27:eb:93:42:d5
> | ukphy0 at smsc0 phy 1: Generic IEEE 802.3u media interface, rev. 3: OUI 
> 0x0001f0, model 0x000c
> | urtwn0 at uhub1 port 2 configuration 1 interface 0 "Realtek 802.11n NIC" 
> rev 2.00/0.00 addr 4
> | urtwn0: MAC/BB RTL8188EU, RF 6052 1T1R, address ec:08:6b:07:c2:1c
> | umass0 at uhub1 port 4 configuration 1 interface 0 "SanDisk Ultra Fit" rev 
> 2.10/1.00 addr 5
> | umass0: using SCSI over Bulk-Only
> | scsibus0 at umass0: 2 targets, initiator 0
> | sd0 at scsibus0 targ 1 lun 0: <SanDisk, Ultra Fit, 1.00> removable 
> serial.07815583320220107303
> | sd0: 29327MB, 512 bytes/sector, 60062500 sectors
> | vscsi0 at root
> | scsibus1 at vscsi0: 256 targets
> | softraid0 at root
> | scsibus2 at softraid0: 256 targets
> | bootfile: sd0a:/bsd
> | boot device: sd0
> | root on sd0a (59de83c8e783b811.a) swap on sd0b dump on sd0b
> | WARNING: CHECK AND RESET THE DATE!
> | gpio0 at bcmgpio0: 54 pins
> | ----------------------------------------------------------------------
> | 
> | -- 
> | >++++++++[<++++++++++>-]<+++++++.>+++[<------>-]<.>+++[<+
> | +++++++++++>-]<.>++[<------------>-]<+.--------------.[-]
> |                  http://www.weirdnet.nl/                 
> | 
> 
> -- 
> >++++++++[<++++++++++>-]<+++++++.>+++[<------>-]<.>+++[<+
> +++++++++++>-]<.>++[<------------>-]<+.--------------.[-]
>                  http://www.weirdnet.nl/                 
> 

Reply via email to