Re: parisc crash on boot with 4.8+git
From: Meelis Roos
Date: Sun Oct 09 2016 - 03:33:11 EST
> On 08.10.2016 23:52, Meelis Roos wrote:
> > Just tried 4.8.0-11288-gb66484c on three of my parsic machines (enabled
> > strict usercopy checking or somethinng like that in make oldconfig).
> It's not related to the usercopy checks, instead it's most likely a
> parisc-specific problem I just noticed today as well and which I'm
> currently fixing.
> > rp3440 worked fine. a500 and rp3410 cras on boot.
> > rp3410 crashed on boot with the following:
> > Linux version 4.8.0-11288-gb66484c (mroos@rp3410) (gcc version 5.4.0 (Gentoo 5.4.0 p1.0) ) #81 Sat Oct 8 20:40:24 EEST 2016
> > unwind_init: start = 0x4076e980, end = 0x407a7060, entries = 14446
> > The 64-bit Kernel has started...
> > Kernel default page size is 4 KB. Huge pages enabled with 1 MB physical and 2 MB virtual size.
> > bootconsole [ttyB0] enabled
> > ...
> > Memory Ranges:
> > 0) Start 0x0000000000000000 End 0x000000003fffffff Size 1024 MB
> > 1) Start 0x0000004040000000 End 0x000000407fdfffff Size 1022 MB
> > Total Memory: 2046 MB
> > Backtrace:
> > [<0000000040102d40>] paging_init+0x5e0/0x740
> > [<0000000040103744>] setup_arch+0x16c/0x1b0
> > [<0000000040100ce0>] start_kernel+0xb8/0x668
> > Bad Address (null pointer deref?): Code=15 regs=00000000408034c0 (Addr=000000099cf94000)
> You probably are facing one or both of those problems:
> 1. Your kernel is bigger than the initial kernel mappings
> 2. You face a bug in the palo boot loader.
> Regarding 1, you probably have CONFIG_TRACE=y or CONFIG_TEST_RHASHTABLE=y enabled?
> Both increase the kernel size a lot and trigger this bug.
# CONFIG_TEST_RHASHTABLE is not set
There is no CONFIG_TRACE in my .config.
grep TRACE .config gives
# CONFIG_TREE_RCU_TRACE is not set
# CONFIG_TRACE_SINK is not set
# CONFIG_STACKTRACE is not set
# CONFIG_RCU_TRACE is not set
# CONFIG_FTRACE is not set
# CONFIG_BACKTRACE_SELF_TEST is not set
> To fix it, make sure you have this patch in your kernel (it's upstream):
I saw this batch of parisc changes in mainline, that's why I built new
kernels for test and then I got the error. 4.8.0-11288-gb66484c is the
version I ran, with the commit AFAIK.
> Additionally if people (not you) use a 32bit kernel I suggest this one too (in my for-next tree):
> Both patches increase the initial kernel page mappings to 32MB which should be sufficient.
> Even if you fix the kernel with the patches above, you still may run
> into the palo bug. I've just pushed a fix for it into the palo tree:
> If you rebuild palo, please make sure to install the new ipl boot loader into
> the palo partition of your boot disc. palo should report at bootup version 1.96.
Meelis Roos (mroos@xxxxxxxx)