armv7/sunxi: latest bsd.rd panics during boot.

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

armv7/sunxi: latest bsd.rd panics during boot.

Artturi Alm
Hi,

OpenBSD 6.2-current (RAMDISK) #165: Sat Feb  3 12:43:25 MST 2018
    [hidden email]:/usr/src/sys/arch/armv7/compile/RAMDISK

was last working RAMDISK i had on the SD which does end up upgrading to
the buggy one below(i haven't tested other sunxi boards yet):
-Artturi

U-Boot SPL 2017.09-dirty (Nov 11 2017 - 09:06:41)
DRAM: 1024 MiB
CPU: 1008000000Hz, AXI/AHB/APB: 3/2/2
Trying to boot from MMC1


U-Boot 2017.09-dirty (Nov 11 2017 - 09:06:41 +0200) Allwinner Technology

CPU:   Allwinner A10 (SUN4I)
Model: Cubietech Cubieboard
I2C:   ready
DRAM:  1 GiB
MMC:   SUNXI SD/MMC: 0
*** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
SCSI:  SATA link 0 timeout.
AHCI 0001.0100 32 slots 1 ports 3 Gbps 0x1 impl SATA mode
flags: ncq stag pm led clo only pmp pio slum part ccc apst
Net:   eth0: ethernet@01c0b000
starting USB...
USB0:   USB EHCI 1.00
USB1:   USB OHCI 1.0
USB2:   USB EHCI 1.00
USB3:   USB OHCI 1.0
scanning bus 0 for devices... 1 USB Device(s) found
scanning bus 2 for devices... 1 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
Hit any key to stop autoboot:  0
switch to partitions #0, OK
mmc0 is current device
Scanning mmc 0:1...
Found EFI removable media binary efi/boot/bootarm.efi
reading efi/boot/bootarm.efi
76528 bytes read in 41 ms (1.8 MiB/s)
libfdt fdt_check_header(): FDT_ERR_BADMAGIC
## Starting EFI application at 42000000 ...
Scanning disks on scsi...
Scanning disks on usb...
Scanning disks on mmc...
MMC Device 1 not found
MMC Device 2 not found
MMC Device 3 not found
Found 6 disks
>> OpenBSD/armv7 BOOTARM 1.0
boot> boot bsd.rd
booting sd0a:bsd.rd: 2655118+8031612+448396 [169220+90+180368+154192]=0xb2170c

OpenBSD/armv7 booting ...
arg0 0xc0e2170c arg1 0x0 arg2 0x48000000
Allocating page tables
freestart = 0x40e22000, free_pages = 258526 (0x0003f1de)
IRQ stack: p0x40e50000 v0xc0e50000
ABT stack: p0x40e51000 v0xc0e51000
UND stack: p0x40e52000 v0xc0e52000
SVC stack: p0x40e53000 v0xc0e53000
Creating L1 page table at 0x40e24000
Mapping kernel
Constructing L2 page tables
undefined page pmap board type: 0
Copyright (c) 1982, 1986, 1989, 1991, 1993
        The Regents of the University of California.  All rights reserved.
Copyright (c) 1995-2018 OpenBSD. All rights reserved.  https://www.OpenBSD.org

OpenBSD 6.3-beta (RAMDISK) #180: Tue Mar  6 07:40:58 MST 2018
    [hidden email]:/usr/src/sys/arch/armv7/compile/RAMDISK
real mem  = 1073741824 (1024MB)
avail mem = 1038036992 (989MB)
mainbus0 at root: Cubietech Cubieboard
cpu0 at mainbus0: ARM Cortex-A8 r3p2 (ARMv7)
cpu0: DC enabled IC enabled WB disabled EABT branch prediction enabled
cpu0: 32KB(64b/l,4way) I-cache, 32KB(64b/l,4way) wr-back D-cache
sxiccmu0 at mainbus0
simplebus0 at mainbus0: "soc"
sxipio0 at simplebus0: 175 pins
sxitimer0 at simplebus0: cntrtimer @ 24000KHz
sxie0 at simplebus0, address 02:11:06:40:a1:20
rlphy0 at sxie0 phy 1: RTL8201L 10/100 PHY, rev. 1
sximmc0 at simplebus0
sdmmc0 at sximmc0: 4-bit, sd high-speed, mmc high-speed, dma
ehci0 at simplebus0
usb0 at ehci0: USB revision 2.0
uhub0 at usb0 configuration 1 interface 0 "Generic EHCI root hub" rev 2.00/1.00 addr 1
sxiahci0 at simplebus0: AHCI 1.1
scsibus0 at sxiahci0: 32 targets
ehci1 at simplebus0
usb1 at ehci1: USB revision 2.0
uhub1 at usb1 configuration 1 interface 0 "Generic EHCI root hub" rev 2.00/1.00 addr 1
sxiintc0 at simplebus0
sxidog0 at simplebus0
sxirtc0 at simplebus0
com0 at simplebus0: ns16550, no working fifo
com0: console
sxitwi0 at simplebus0
iic0 at sxitwi0
axppmic0 at iic0 addr 0x34: AXP209
sxitwi1 at simplebus0
iic1 at sxitwi1
gpio0 at sxipio0: 32 pins
gpio1 at sxipio0: 32 pins
gpio2 at sxipio0: 32 pins
gpio3 at sxipio0: 32 pins
gpio4 at sxipio0: 32 pins
gpio5 at sxipio0: 32 pins
gpio6 at sxipio0: 32 pins
gpio7 at sxipio0: 32 pins
gpio8 at sxipio0: 32 pins

uvm_fault(0xc0d7ad1c, 0, 2, 0) -> e
Fatal kernel mode data abort: 'Translation fault (L1)'
trapframe: 0xc0e54ef8
DFSR=00000805, DFAR=00000000, spsr=20000153
r0 =00000000, r1 =c0e53010, r2 =00000138, r3 =00000000
r4 =c0e54fb0, r5 =c0d7afb0, r6 =c63932e0, r7 =c6392dc8
r8 =00000000, r9 =00000000, r10=00000001, r11=c0e54f70
r12=00000000, ssp=c0e54f4c, slr=40e24000, pc =c044bb2c

panic: Fatal abort
syncing disks... done
rebooting...


Reply | Threaded
Open this post in threaded view
|

Re: armv7/sunxi: latest bsd.rd panics during boot.

Artturi Alm
On Thu, Mar 08, 2018 at 11:23:25AM +0200, Artturi Alm wrote:

> Hi,
>
> OpenBSD 6.2-current (RAMDISK) #165: Sat Feb  3 12:43:25 MST 2018
>     [hidden email]:/usr/src/sys/arch/armv7/compile/RAMDISK
>
> was last working RAMDISK i had on the SD which does end up upgrading to
> the buggy one below(i haven't tested other sunxi boards yet):
> -Artturi
>
> U-Boot SPL 2017.09-dirty (Nov 11 2017 - 09:06:41)
> DRAM: 1024 MiB
> CPU: 1008000000Hz, AXI/AHB/APB: 3/2/2
> Trying to boot from MMC1
>
>
> U-Boot 2017.09-dirty (Nov 11 2017 - 09:06:41 +0200) Allwinner Technology
>
> CPU:   Allwinner A10 (SUN4I)
> Model: Cubietech Cubieboard
> I2C:   ready
> DRAM:  1 GiB
> MMC:   SUNXI SD/MMC: 0
> *** Warning - bad CRC, using default environment
>
> In:    serial
> Out:   serial
> Err:   serial
> SCSI:  SATA link 0 timeout.
> AHCI 0001.0100 32 slots 1 ports 3 Gbps 0x1 impl SATA mode
> flags: ncq stag pm led clo only pmp pio slum part ccc apst
> Net:   eth0: ethernet@01c0b000
> starting USB...
> USB0:   USB EHCI 1.00
> USB1:   USB OHCI 1.0
> USB2:   USB EHCI 1.00
> USB3:   USB OHCI 1.0
> scanning bus 0 for devices... 1 USB Device(s) found
> scanning bus 2 for devices... 1 USB Device(s) found
>        scanning usb for storage devices... 0 Storage Device(s) found
> Hit any key to stop autoboot:  0
> switch to partitions #0, OK
> mmc0 is current device
> Scanning mmc 0:1...
> Found EFI removable media binary efi/boot/bootarm.efi
> reading efi/boot/bootarm.efi
> 76528 bytes read in 41 ms (1.8 MiB/s)
> libfdt fdt_check_header(): FDT_ERR_BADMAGIC
> ## Starting EFI application at 42000000 ...
> Scanning disks on scsi...
> Scanning disks on usb...
> Scanning disks on mmc...
> MMC Device 1 not found
> MMC Device 2 not found
> MMC Device 3 not found
> Found 6 disks
> >> OpenBSD/armv7 BOOTARM 1.0
> boot> boot bsd.rd
> booting sd0a:bsd.rd: 2655118+8031612+448396 [169220+90+180368+154192]=0xb2170c
>
> OpenBSD/armv7 booting ...
> arg0 0xc0e2170c arg1 0x0 arg2 0x48000000
> Allocating page tables
> freestart = 0x40e22000, free_pages = 258526 (0x0003f1de)
> IRQ stack: p0x40e50000 v0xc0e50000
> ABT stack: p0x40e51000 v0xc0e51000
> UND stack: p0x40e52000 v0xc0e52000
> SVC stack: p0x40e53000 v0xc0e53000
> Creating L1 page table at 0x40e24000
> Mapping kernel
> Constructing L2 page tables
> undefined page pmap board type: 0
> Copyright (c) 1982, 1986, 1989, 1991, 1993
>         The Regents of the University of California.  All rights reserved.
> Copyright (c) 1995-2018 OpenBSD. All rights reserved.  https://www.OpenBSD.org
>
> OpenBSD 6.3-beta (RAMDISK) #180: Tue Mar  6 07:40:58 MST 2018
>     [hidden email]:/usr/src/sys/arch/armv7/compile/RAMDISK
> real mem  = 1073741824 (1024MB)
> avail mem = 1038036992 (989MB)
> mainbus0 at root: Cubietech Cubieboard
> cpu0 at mainbus0: ARM Cortex-A8 r3p2 (ARMv7)
> cpu0: DC enabled IC enabled WB disabled EABT branch prediction enabled
> cpu0: 32KB(64b/l,4way) I-cache, 32KB(64b/l,4way) wr-back D-cache
> sxiccmu0 at mainbus0
> simplebus0 at mainbus0: "soc"
> sxipio0 at simplebus0: 175 pins
> sxitimer0 at simplebus0: cntrtimer @ 24000KHz
> sxie0 at simplebus0, address 02:11:06:40:a1:20
> rlphy0 at sxie0 phy 1: RTL8201L 10/100 PHY, rev. 1
> sximmc0 at simplebus0
> sdmmc0 at sximmc0: 4-bit, sd high-speed, mmc high-speed, dma
> ehci0 at simplebus0
> usb0 at ehci0: USB revision 2.0
> uhub0 at usb0 configuration 1 interface 0 "Generic EHCI root hub" rev 2.00/1.00 addr 1
> sxiahci0 at simplebus0: AHCI 1.1
> scsibus0 at sxiahci0: 32 targets
> ehci1 at simplebus0
> usb1 at ehci1: USB revision 2.0
> uhub1 at usb1 configuration 1 interface 0 "Generic EHCI root hub" rev 2.00/1.00 addr 1
> sxiintc0 at simplebus0
> sxidog0 at simplebus0
> sxirtc0 at simplebus0
> com0 at simplebus0: ns16550, no working fifo
> com0: console
> sxitwi0 at simplebus0
> iic0 at sxitwi0
> axppmic0 at iic0 addr 0x34: AXP209
> sxitwi1 at simplebus0
> iic1 at sxitwi1
> gpio0 at sxipio0: 32 pins
> gpio1 at sxipio0: 32 pins
> gpio2 at sxipio0: 32 pins
> gpio3 at sxipio0: 32 pins
> gpio4 at sxipio0: 32 pins
> gpio5 at sxipio0: 32 pins
> gpio6 at sxipio0: 32 pins
> gpio7 at sxipio0: 32 pins
> gpio8 at sxipio0: 32 pins
>
> uvm_fault(0xc0d7ad1c, 0, 2, 0) -> e
> Fatal kernel mode data abort: 'Translation fault (L1)'
> trapframe: 0xc0e54ef8
> DFSR=00000805, DFAR=00000000, spsr=20000153
> r0 =00000000, r1 =c0e53010, r2 =00000138, r3 =00000000
> r4 =c0e54fb0, r5 =c0d7afb0, r6 =c63932e0, r7 =c6392dc8
> r8 =00000000, r9 =00000000, r10=00000001, r11=c0e54f70
> r12=00000000, ssp=c0e54f4c, slr=40e24000, pc =c044bb2c
>
> panic: Fatal abort
> syncing disks... done
> rebooting...
>
>

so this does happen on armv7/omap also, and for it i had working RAMDISK
from fri mar 2:

U-Boot SPL 2017.11 (Dec 02 2017 - 00:06:03)
Trying to boot from MMC1
reading u-boot.img
reading u-boot.img


U-Boot 2017.11 (Dec 02 2017 - 00:06:03 -0700)

CPU  : AM335X-GP rev 2.0
I2C:   ready
DRAM:  512 MiB
No match for driver 'omap_hsmmc'
No match for driver 'omap_hsmmc'
Some drivers were not found
MMC:   OMAP SD/MMC: 0, OMAP SD/MMC: 1
Net:   cpsw, usb_ether
Press SPACE to abort autoboot in 5 seconds
reading /am335x-boneblack.dtb
35930 bytes read in 10 ms (3.4 MiB/s)
reading /efi/boot/bootarm.efi
76576 bytes read in 18 ms (4.1 MiB/s)
## Starting EFI application at 82000000 ...
Scanning disks on usb...
Scanning disks on mmc...
MMC Device 2 not found
MMC Device 3 not found
Found 6 disks
>> OpenBSD/armv7 BOOTARM 1.0
boot> boot bsd.rd
booting sd0a:bsd.rd: 2655118+8031612+448396 [169220+90+180368+154192]=0xb2170c

OpenBSD/armv7 booting ...
arg0 0xc0e2170c arg1 0xe05 arg2 0x88000000
Allocating page tables
freestart = 0x80e22000, free_pages = 127454 (0x0001f1de)
IRQ stack: p0x80e50000 v0xc0e50000
ABT stack: p0x80e51000 v0xc0e51000
UND stack: p0x80e52000 v0xc0e52000
SVC stack: p0x80e53000 v0xc0e53000
Creating L1 page table at 0x80e24000
Mapping kernel
Constructing L2 page tables
undefined page pmap board type: 3589
Copyright (c) 1982, 1986, 1989, 1991, 1993
        The Regents of the University of California.  All rights reserved.
Copyright (c) 1995-2018 OpenBSD. All rights reserved.  https://www.OpenBSD.org

OpenBSD 6.3-beta (RAMDISK) #180: Tue Mar  6 07:40:58 MST 2018
    [hidden email]:/usr/src/sys/arch/armv7/compile/RAMDISK
real mem  = 536870912 (512MB)
avail mem = 511447040 (487MB)
mainbus0 at root: TI AM335x BeagleBone Black
cpu0 at mainbus0: ARM Cortex-A8 r3p2 (ARMv7)
cpu0: DC enabled IC enabled WB disabled EABT branch prediction enabled
cpu0: 32KB(64b/l,4way) I-cache, 32KB(64b/l,4way) wr-back D-cache
omap0 at mainbus0
prcm0 at omap0 rev 0.2
dmtimer0 at omap0 rev 3.1
dmtimer1 at omap0 rev 3.1
simplebus0 at mainbus0: "ocp"
simplebus1 at simplebus0: "l4_wkup"
simplebus2 at simplebus1: "scm"
syscon0 at simplebus2: "scm_conf"
ompinmux0 at simplebus2
simplebus3 at simplebus2: "scm_conf"
intc0 at simplebus0 rev 5.0
omgpio0 at simplebus0: rev 0.1
gpio0 at omgpio0: 32 pins
omgpio1 at simplebus0: rev 0.1
gpio1 at omgpio1: 32 pins
omgpio2 at simplebus0: rev 0.1
gpio2 at omgpio2: 32 pins
omgpio3 at simplebus0: rev 0.1
gpio3 at omgpio3: 32 pins
com0 at simplebus0: ti16750, 64 byte fifo
com0: console
tiiic0 at simplebus0 rev 0.11
iic0 at tiiic0
"ti,tps65217" at iic0 addr 0x24 not configured
"atmel,24c256" at iic0 addr 0x50 not configured
"nxp,tda998x" at iic0 addr 0x70 not configured
tiiic1 at simplebus0 rev 0.11
iic1 at tiiic1
"atmel,24c256" at iic1 addr 0x54 not configured
"atmel,24c256" at iic1 addr 0x55 not configured
"atmel,24c256" at iic1 addr 0x56 not configured
"atmel,24c256" at iic1 addr 0x57 not configured
ommmc0 at simplebus0
sdmmc0 at ommmc0: 4-bit, sd high-speed, mmc high-speed
ommmc1 at simplebus0
sdmmc1 at ommmc1: 1-bit
omdog0 at simplebus0 rev 0.1
cpsw0 at simplebus0: version 1.12 (0), address c8:a0:30:b9:e5:6c
ukphy0 at cpsw0 phy 0: Generic IEEE 802.3u media interface, rev. 1: OUI 0x0001f0, model 0x000f

uvm_fault(0xc0d7ad1c, 46904000, 2, 0) -> e
Fatal kernel mode data abort: 'Translation fault (L1)'
trapframe: 0xc0e54f00
DFSR=00000805, DFAR=4690460e, spsr=60000113
r0 =4690460e, r1 =c0e53001, r2 =00000154, r3 =00000000
r4 =4690460e, r5 =c0d7afb0, r6 =c51c5cf0, r7 =c51c49d8
r8 =00000000, r9 =00000000, r10=00000001, r11=c0e54f70
r12=00000002, ssp=c0e54f50, slr=c045c09c, pc =c044bbbc

panic: Fatal abort
syncing disks... done
rebooting...

U-Boot SPL 2017.11 (Dec 02 2017 - 00:06:03)
Trying to boot from MMC1
reading u-boot.img
reading u-boot.img


U-Boot 2017.11 (Dec 02 2017 - 00:06:03 -0700)

CPU  : AM335X-GP rev 2.0
I2C:   ready
DRAM:  512 MiB
No match for driver 'omap_hsmmc'
No match for driver 'omap_hsmmc'
Some drivers were not found
MMC:   OMAP SD/MMC: 0, OMAP SD/MMC: 1
Net:   cpsw, usb_ether
Press SPACE to abort autoboot in 5 seconds
reading /am335x-boneblack.dtb
35930 bytes read in 10 ms (3.4 MiB/s)
reading /efi/boot/bootarm.efi
76576 bytes read in 18 ms (4.1 MiB/s)
## Starting EFI application at 82000000 ...
Scanning disks on usb...
Scanning disks on mmc...
MMC Device 2 not found
MMC Device 3 not found
Found 6 disks
>> OpenBSD/armv7 BOOTARM 1.0
boot> boot obsd.rd
booting sd0a:obsd.rd: 2659966+8028524+447148 [169168+90+180320+154115]=0xb2056c

OpenBSD/armv7 booting ...
arg0 0xc0e2056c arg1 0xe05 arg2 0x88000000
Allocating page tables
freestart = 0x80e21000, free_pages = 127455 (0x0001f1df)
IRQ stack: p0x80e4f000 v0xc0e4f000
ABT stack: p0x80e50000 v0xc0e50000
UND stack: p0x80e51000 v0xc0e51000
SVC stack: p0x80e52000 v0xc0e52000
Creating L1 page table at 0x80e24000
Mapping kernel
Constructing L2 page tables
undefined page pmap board type: 3589
Copyright (c) 1982, 1986, 1989, 1991, 1993
        The Regents of the University of California.  All rights reserved.
Copyright (c) 1995-2018 OpenBSD. All rights reserved.  https://www.OpenBSD.org

OpenBSD 6.3-beta (RAMDISK) #177: Fri Mar  2 13:21:32 MST 2018
    [hidden email]:/usr/src/sys/arch/armv7/compile/RAMDISK
real mem  = 536870912 (512MB)
avail mem = 511451136 (487MB)
mainbus0 at root: TI AM335x BeagleBone Black
cpu0 at mainbus0: ARM Cortex-A8 r3p2 (ARMv7)
cpu0: DC enabled IC enabled WB disabled EABT branch prediction enabled
cpu0: 32KB(64b/l,4way) I-cache, 32KB(64b/l,4way) wr-back D-cache
omap0 at mainbus0
prcm0 at omap0 rev 0.2
dmtimer0 at omap0 rev 3.1
dmtimer1 at omap0 rev 3.1
simplebus0 at mainbus0: "ocp"
simplebus1 at simplebus0: "l4_wkup"
simplebus2 at simplebus1: "scm"
syscon0 at simplebus2: "scm_conf"
ompinmux0 at simplebus2
simplebus3 at simplebus2: "scm_conf"
intc0 at simplebus0 rev 5.0
omgpio0 at simplebus0: rev 0.1
gpio0 at omgpio0: 32 pins
omgpio1 at simplebus0: rev 0.1
gpio1 at omgpio1: 32 pins
omgpio2 at simplebus0: rev 0.1
gpio2 at omgpio2: 32 pins
omgpio3 at simplebus0: rev 0.1
gpio3 at omgpio3: 32 pins
com0 at simplebus0: ti16750, 64 byte fifo
com0: console
tiiic0 at simplebus0 rev 0.11
iic0 at tiiic0
"ti,tps65217" at iic0 addr 0x24 not configured
"atmel,24c256" at iic0 addr 0x50 not configured
"nxp,tda998x" at iic0 addr 0x70 not configured
tiiic1 at simplebus0 rev 0.11
iic1 at tiiic1
"atmel,24c256" at iic1 addr 0x54 not configured
"atmel,24c256" at iic1 addr 0x55 not configured
"atmel,24c256" at iic1 addr 0x56 not configured
"atmel,24c256" at iic1 addr 0x57 not configured
ommmc0 at simplebus0
sdmmc0 at ommmc0: 4-bit, sd high-speed, mmc high-speed
ommmc1 at simplebus0
sdmmc1 at ommmc1: 1-bit
omdog0 at simplebus0 rev 0.1
cpsw0 at simplebus0: version 1.12 (0), address c8:a0:30:b9:e5:6c
ukphy0 at cpsw0 phy 0: Generic IEEE 802.3u media interface, rev. 1: OUI 0x0001f0, model 0x000f
scsibus0 at sdmmc0: 2 targets, initiator 0
sd0 at scsibus0 targ 1 lun 0: <SD/MMC, SD16G, 0030> SCSI2 0/direct removable
sd0: 14804MB, 512 bytes/sector, 30318592 sectors
scsibus1 at sdmmc1: 2 targets, initiator 0
sd1 at scsibus1 targ 1 lun 0: <SD/MMC, MMC02G, 0000> SCSI2 0/direct removable
sd1: 1832MB, 512 bytes/sector, 3751936 sectors
boot device: sd0
root on rd0a swap on rd0b dump on rd0b
WARNING: CHECK AND RESET THE DATE!
erase ^?, werase ^W, kill ^U, intr ^C, status ^T

Welcome to the OpenBSD/armv7 6.3 installation program.
(I)nstall, (U)pgrade, (A)utoinstall or (S)hell?

Reply | Threaded
Open this post in threaded view
|

Re: armv7/sunxi: latest bsd.rd panics during boot.

Artturi Alm
Hi,

new snap did work again on both boards, so i guess this was fixed before
my report already, thanks.

-Artturi

Reply | Threaded
Open this post in threaded view
|

Re: armv7/sunxi: latest bsd.rd panics during boot.

Brandon Bergren
I think I maybe saw this or a similar fault exactly *once* when I was hunting for alignment bugs on armv7. I think it might be possible that there's still specific link orders that tickle a bug somewhere.

Grabbed the bad snapshot and verified that it does crash for me on beaglebone black. Initial analysis:

Crash happens in memcpy_fdestul (unaligned destination memcpy) inside cpu_fork(). I believe it is the *pcb = p1->p_addr->u_pcb line.

I might try my JTAG interface later and see if I can grab an actual stack and sniff around a bit.