[BISECTED] kexec issue with v4.15-rc on N8x0
Aaro Koskinen
aaro.koskinen at iki.fi
Mon Jan 22 14:06:54 PST 2018
Hi,
On Mon, Jan 15, 2018 at 10:15:08AM -0800, Tony Lindgren wrote:
> * Aaro Koskinen <aaro.koskinen at iki.fi> [180111 11:48]:
> > When booting v4.15-rc kernel with kexec (kexec-tools 2.0.16) on N8x0, I get:
> >
> > Uncompressing Linux... done, booting the kernel.
> > no ATAGS support: can't continue
> >
> > v4.14 kernel works OK.
> >
> > I bisected this to:
> >
> > commit c772568788b5f0cbaac7c8d4111d7173bfc90673
> > Author: Russell King <rmk+kernel at armlinux.org.uk>
> > Date: Thu Sep 21 18:10:19 2017 +0100
> >
> > ARM: add additional table to compressed kernel
> >
> > If I revert the commit, kexec booting starts to work. Interesting,
> > the patch mentions "This is necessary for correct behaviour of kexec.",
> > so I wonder what could be wrong...
>
> So care to post what you get if you load with kexec -d -l options
> before and after this commit?
See below. I guess the interesting part is the "zImage has tags" with the
bad kernel.
Bad (plain v4.15-rc9)
---------------------
kernel: 0xb6a25008 kernel_size: 0x3ce605
MEMORY RANGES
0000000080000000-0000000087ffffff (0)
zImage header: 0x016f2818 0x00000000 0x003c59d0
zImage size 0x3c59d0, file size 0x3ce605
zImage has tags
offset 0x00003be0 tag 0x5a534c4b size 8
kernel image size: 0x00c5c6ec
kexec_load: entry = 0x80008000 flags = 0x280000
nr_segments = 2
segment[0].buf = 0xb6a25008
segment[0].bufsz = 0x3c59d0
segment[0].mem = 0x80008000
segment[0].memsz = 0x3c6000
segment[1].buf = 0x1ed52b8
segment[1].bufsz = 0x8c35
segment[1].mem = 0x80c66000
segment[1].memsz = 0x9000
[ 4.850341] kexec_core: Starting new kernel
[ 4.854766] Bye!
(kernel fails to boot)
Good (v4.15-rc9 and c772568788b5f0cbaac7c8d4111d7173bfc90673 reverted)
-----------------------------
kernel: 0xb6999008 kernel_size: 0x3ce9bd
MEMORY RANGES
0000000080000000-0000000087ffffff (0)
zImage header: 0x016f2818 0x00000000 0x003c5d88
zImage size 0x3c5d88, file size 0x3ce9bd
kexec_load: entry = 0x80008000 flags = 0x280000
nr_segments = 2
segment[0].buf = 0xb6999008
segment[0].bufsz = 0x3c5d88
segment[0].mem = 0x80008000
segment[0].memsz = 0x3c6000
segment[1].buf = 0x14192b8
segment[1].bufsz = 0x8c35
segment[1].mem = 0x812e7000
segment[1].memsz = 0x9000
[ 4.860473] kexec_core: Starting new kernel
[ 4.864898] Bye!
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 4.15.0-rc9-n8x0-los_ecc96+-00001-g0a003b4 (aaro at amd-fx-6350) (gcc version 6.4.0 (GCC)) #1 Mon Jan 22 23:43:19 EET 2018
[ 0.000000] CPU: ARMv6-compatible processor [4107b362] revision 2 (ARMv6TEJ), cr=00c5387d
[ 0.000000] CPU: VIPT aliasing data cache, VIPT aliasing instruction cache
[ 0.000000] OF: fdt: Machine model: Nokia N810
[...]
(kernel boots fine)
> Also, I wonder if Linux next commit 55e7cff44c7c ("ARM: verify
> size of zImage") helps here?
No difference.
A.
More information about the linux-arm-kernel
mailing list