[U-Boot] Fwd: Crash in U-Boot
Heinrich Schuchardt
xypron.glpk at gmx.de
Sun Jun 23 15:08:08 UTC 2019
Hello Alex,
on the i.MX6 Wandboard the Kernel crashes when booting via GRUB at least
since U-Boot v2019.01. See below.
In the code for SetVirtualAddressMap I saw the that the pointer to the
list of configuration tables is adjusted:
if ((map_start <= (uintptr_t)systab.tables) &&
(map_end >= (uintptr_t)systab.tables)) {
char *ptr = (char *)systab.tables;
ptr += off;
systab.tables = (struct efi_configuration_table *)ptr;
}
Shouldn't the pointers to the individual configuration tables be
adjusted too? I found no such code.
Best regards
Heinrich
-------- Forwarded Message --------
Subject: Re: Crash in U-Boot reported by you in IRC
Date: Sun, 23 Jun 2019 14:44:07 +0200
From: Heinrich Schuchardt <xypron.glpk at gmx.de>
To: vagrant at debian.org
Hello Vagrant,
I checked if I could reproduce you problem on a Wandboard. But it did
not show the error you reported. Instead I got a Kernel oops.
I used a Kernel with
CONFIG_DEBUG_LL=y
CONFIG_DEBUG_IMX6Q_UART=y
CONFIG_DEBUG_IMX_UART_PORT=1
CONFIG_EARLY_PRINTK=y
added and earlyprintk on the command line.
Loading Linux 4.19.34-armmp ...
Loading initial ramdisk ...
EFI stub: Booting Linux Kernel...
EFI stub: Using DTB from configuration table
EFI stub: Exiting boot services and installing virtual address map...
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 4.19.34-armmp (zfsdt at family) (gcc version
8.3.0 (Debian 8.3.0-5)) #1 SMP Sat Apr 13 13:34:54 CES9
[ 0.000000] CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7),
cr=10c5387d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing
instruction cache
[ 0.000000] OF: fdt: Machine model: Wandboard i.MX6 Quad Board rev B1
[ 0.000000] OF: fdt: Ignoring memory range 0x10000000 - 0x41000000
[ 0.000000] bootconsole [earlycon0] enabled
[ 0.000000] Memory policy: Data cache writealloc
[ 0.000000] efi: Getting EFI parameters from FDT:
[ 0.000000] efi: EFI v2.70 by Das U-Boot
[ 0.000000] efi: SMBIOS=0x8dd81000
[ 0.000000] OF: fdt: Ignoring memory block 0x10000000 - 0x12000000
[ 0.000000] OF: fdt: Ignoring memory block 0x12000000 - 0x1240a000
[ 0.000000] OF: fdt: Ignoring memory block 0x1240a000 - 0x17d00000
[ 0.000000] OF: fdt: Ignoring memory block 0x17d00000 - 0x17f00000
[ 0.000000] OF: fdt: Ignoring memory block 0x17f00000 - 0x17f0c000
[ 0.000000] OF: fdt: Ignoring memory block 0x17f0c000 - 0x2e1f2000
[ 0.000000] OF: fdt: Ignoring memory block 0x2e1f2000 - 0x2ffff000
[ 0.000000] OF: fdt: Ignoring memory range 0x2ffff000 - 0x41000000
[ 0.000000] INITRD: 0x2e1f2000+0x01e0d000 is not a memory region -
disabling initrd
[ 0.000000] cma: Reserved 16 MiB at 0x8e000000
[ 0.000000] BUG: not creating mapping for 0x41000000 at 0x99000000 in
user region
[ 0.000000] Unable to handle kernel paging request at virtual address
6fd00000
[ 0.000000] pgd = (ptrval)
[ 0.000000] [6fd00000] *pgd=00000000
[ 0.000000] Internal error: Oops: 5 [#1] SMP ARM
[ 0.000000] Modules linked in:
[ 0.000000] CPU: 0 PID: 0 Comm: swapper Not tainted 4.19.34-armmp #1
[ 0.000000] Hardware name: Freescale i.MX6 Quad/DualLite (Device Tree)
[ 0.000000] PC is at fdt_check_header+0xc/0x80
[ 0.000000] LR is at __unflatten_device_tree+0x4c/0x274
[ 0.000000] pc : [<c0ae7ee8>] lr : [<c0967e34>] psr: 200000d3
[ 0.000000] sp : c1201ec0 ip : c1201ed0 fp : c1201ecc
[ 0.000000] r10: c1316280 r9 : 00000000 r8 : c135e1f8
[ 0.000000] r7 : 00000000 r6 : 6fd00000 r5 : c1074ac0 r4 : c1074ac0
[ 0.000000] r3 : c1074ac0 r2 : c135e1f8 r1 : 00000000 r0 : 6fd00000
[ 0.000000] Flags: nzCv IRQs off FIQs off Mode SVC_32 ISA ARM
Segment none
[ 0.000000] Control: 10c5387d Table: 6820404a DAC: 00000051
[ 0.000000] Process swapper (pid: 0, stack limit = 0x(ptrval))
[ 0.000000] Stack: (0xc1201ec0 to 0xc1202000)
[ 0.000000] 1ec0: c1201efc c1201ed0 c0967e34 c0ae7ee8 c1074ac0
c1074ac0 c1209900 8fffffff
[ 0.000000] 1ee0: 8f797000 c1349768 e7fffcc0 c1316280 c1201f1c
c1201f00 c1075de4 c0967df4
[ 0.000000] 1f00: 00000000 c1201f10 c0358188 c1082ddc c1201fa4
c1201f20 c1004a34 c1075dac
[ 0.000000] 1f20: ffffffff 10c5387d c03bc990 c03bc47c c0d61538
c0d630cc c1205dcc c1201fbc
[ 0.000000] 1f40: c0e330c8 fffff000 c1201fa4 c1201f58 c10220c8
c0af6cf0 c1205dcc c1205dcc
[ 0.000000] 1f60: c1205dcc ffffffff c1201f94 c1201f78 c03bcd08
00000000 c1201f9c 00000000
[ 0.000000] 1f80: c1205dcc c1205dcc ffffffff c1205dc0 412fc09a
10c5387d c1201ff4 c1201fa8
[ 0.000000] 1fa0: c1000c2c c10040f4 00000000 00000000 00000000
00000000 00000000 c1091e40
[ 0.000000] 1fc0: 00000000 00000000 00000000 c1000330 00000051
10c0387d ffffffff 17d00000
[ 0.000000] 1fe0: 412fc09a 10c5387d 00000000 c1201ff8 00000000
c1000bbc 00000000 00000000
[ 0.000000] [<c0ae7ee8>] (fdt_check_header) from [<c0967e34>]
(__unflatten_device_tree+0x4c/0x274)
[ 0.000000] [<c0967e34>] (__unflatten_device_tree) from [<c1075de4>]
(unflatten_device_tree+0x44/0x54)
[ 0.000000] [<c1075de4>] (unflatten_device_tree) from [<c1004a34>]
(setup_arch+0x94c/0xd88)
[ 0.000000] [<c1004a34>] (setup_arch) from [<c1000c2c>]
(start_kernel+0x7c/0x504)
[ 0.000000] [<c1000c2c>] (start_kernel) from [<00000000>] ( (null))
[ 0.000000] Code: e89da800 e1a0c00d e92dd800 e24cb004 (e5903000)
[ 0.000000] random: get_random_bytes called from
print_oops_end_marker+0x34/0x5c 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! ]---
More information about the U-Boot
mailing list