Hi all,
I'm trying to boot a 5.10 kernel with OpenSBI trunk and u-boot 2020.10 on an Unleashed board, but the kernel booting crashes at a very early stage at initmem. I'm using the defconfig, and have also tried OpenSBI 0.8 and the 2021.01-rcX releases of u-boot - all of them fail with the same error at the kernel. Trying to bisect, 5.10-rc3 had this issue already (-rc1 didn't boot for me for some reason), while the latest 5.9 boots fine.
Earlier in December, Michael had a similar issue with qemu + u-boot on -rc5 - this looks to be similar if not the same issue. Can someone please advise if there is a known issue around this, or if I've left out maybe a config option?
Thanks,
Zoltan H
---- CUT HERE ----
U-Boot SPL 2020.10 (Dec 18 2020 - 16:15:29 +0000)
Trying to boot from MMC1
U-Boot 2020.10 (Dec 18 2020 - 16:15:29 +0000)
CPU: rv64imafdc
Model: SiFive HiFive Unleashed A00
DRAM: 8 GiB
MMC: spi@10050000:mmc@0: 0
Loading Environment from SPIFlash... SF: Detected is25wp256 with page size 256 Bytes, erase size 4 KiB, total 32 MiB
*** Warning - bad CRC, using default environment
In: serial@10010000
Out: serial@10010000
Err: serial@10010000
Net: eth0: ethernet@10090000
Hit any key to stop autoboot: 0
switch to partitions #0, OK
mmc0 is current device
Scanning mmc 0:3...
Found U-Boot script /boot.scr
279 bytes read in 2 ms (135.7 KiB/s)
## Executing script at 88100000
17710680 bytes read in 9637 ms (1.8 MiB/s)
## Loading kernel from FIT Image at 84000000 ...
Using 'config@1' configuration
Trying 'kernel@1' kernel subimage
Description: RISCV Linux-5.10.1
Type: Kernel Image
Compression: uncompressed
Data Start: 0x840000e8
Data Size: 17701812 Bytes = 16.9 MiB
Architecture: RISC-V
OS: Linux
Load Address: 0xa4000000
Entry Point: 0xa4000000
Hash algo: crc32
Hash value: 0ae219b8
Hash algo: sha1
Hash value: eb8b389b9f0b9d1874d05933b8a5072cf0d52a5b
Verifying Hash Integrity ... crc32+ sha1+ OK
## Loading fdt from FIT Image at 84000000 ...
Using 'config@1' configuration
Trying 'fdt@1' fdt subimage
Description: RISCV OpenWrt sifive_fu540 device tree blob
Type: Flat Device Tree
Compression: uncompressed
Data Start: 0x850e1dd8
Data Size: 6987 Bytes = 6.8 KiB
Architecture: RISC-V
Hash algo: crc32
Hash value: 67c8558f
Hash algo: sha1
Hash value: bd3ad2fc4693a20996f03dbb8883f71a98b507cc
Verifying Hash Integrity ... crc32+ sha1+ OK
Booting using the fdt blob at 0x850e1dd8
Loading Kernel Image
Using Device Tree in place at 00000000850e1dd8, end 00000000850e6922
Starting kernel ...
[ 0.000000] Linux version 5.10.1 (wigyori@trabant) (riscv64-openwrt-linux-gcc (OpenWrt GCC 8.4.0 r15216+10-aab8aa4cd0) 8.4.0, GNU ld (GNU Binutils) 2.34) #2 SMP Sat Dec 19 16:13:43 CET 2020
[ 0.000000] OF: fdt: Ignoring memory range 0x80000000 - 0xa4000000
[ 0.000000] earlycon: sbi0 at I/O port 0x0 (options '')
[ 0.000000] printk: bootconsole [sbi0] enabled
[ 0.000000] Zone ranges:
[ 0.000000] DMA32 [mem 0x00000000a4000000-0x00000000ffffffff]
[ 0.000000] Normal [mem 0x0000000100000000-0x000000027fffffff]
[ 0.000000] Movable zone start for each node
[ 0.000000] Early memory node ranges
[ 0.000000] node 0: [mem 0x00000000a4000000-0x000000027fffffff]
[ 0.000000] Initmem setup node 0 [mem 0x00000000a4000000-0x000000027fffffff]
[ 0.000000] Unable to handle kernel paging request at virtual address ffffffdfe10e1dd9
[ 0.000000] Oops [#1]
[ 0.000000] Modules linked in:
[ 0.000000] CPU: 0 PID: 0 Comm: swapper Not tainted 5.10.1 #2
[ 0.000000] epc: ffffffe0004ad41a ra : ffffffe00001ee46 sp : ffffffe001003f60
[ 0.000000] gp : ffffffe0010e1580 tp : ffffffe00100bd40 t0 : ffffffe1d57d7c40
[ 0.000000] t1 : 0000000000000030 t2 : 2d7472776e65706f s0 : ffffffe001003f80
[ 0.000000] s1 : ffffffdfe10e1dd8 a0 : ffffffdfe10e1dd8 a1 : ffffffe1d57d7c00
[ 0.000000] a2 : fffffffffffff000 a3 : 0000000000000000 a4 : 0000000000000000
[ 0.000000] a5 : ffffffdf5c000000 a6 : ffffffe0010104b8 a7 : 0000000000000080
[ 0.000000] s2 : ffffffe0010e20a8 s3 : 000000000000071f s4 : 0000000000000001
[ 0.000000] s5 : 00000000ff77b928 s6 : 00000000fffe8998 s7 : 0000000000000000
[ 0.000000] s8 : 00000000fff8409a s9 : 00000000a4000000 s10: 00000000840000e8
[ 0.000000] s11: 0000000000000000 t3 : ffffffe0008c26d0 t4 : 0000000000000001
[ 0.000000] t5 : 0000000000000018 t6 : 00000001dc000000
[ 0.000000] status: 0000000200000100 badaddr: ffffffdfe10e1dd9 cause: 000000000000000d
[ 0.000000] random: get_random_bytes called from print_oops_end_marker+0x22/0x4a with crng_init=0
[ 0.000000] ---[ end trace 0000000000000000 ]---
[ 0.000000] Kernel panic - not syncing: Attempted to kill the idle task!
[ 0.000000] ---[ end Kernel panic - not syncing: Attempted to kill the idle task! ]---