[PATCH 2/2] powerpc: Show PAGE_SIZE in __die() output
Michael Ellerman
mpe at ellerman.id.au
Thu Jan 10 12:02:40 AEDT 2019
Christophe Leroy <christophe.leroy at c-s.fr> writes:
> Le 08/01/2019 à 13:21, Christophe Leroy a écrit :
>> Le 08/01/2019 à 13:05, Michael Ellerman a écrit :
>>> The page size the kernel is built with is useful info when debugging a
>>> crash, so add it to the output in __die().
>>>
>>> Result looks like eg:
>>>
>>> kernel BUG at drivers/misc/lkdtm/bugs.c:63!
>>> Oops: Exception in kernel mode, sig: 5 [#1]
>>> LE PAGE_SIZE=64K SMP NR_CPUS=2048 NUMA pSeries
>>> Modules linked in: vmx_crypto kvm binfmt_misc ip_tables
>>>
>>> Signed-off-by: Michael Ellerman <mpe at ellerman.id.au>
>>> ---
>>> arch/powerpc/kernel/traps.c | 12 ++++++++++++
>>> 1 file changed, 12 insertions(+)
>>>
>>> diff --git a/arch/powerpc/kernel/traps.c b/arch/powerpc/kernel/traps.c
>>> index 431a86d3f772..fc972e4eee5f 100644
>>> --- a/arch/powerpc/kernel/traps.c
>>> +++ b/arch/powerpc/kernel/traps.c
>>> @@ -268,6 +268,18 @@ static int __die(const char *str, struct pt_regs
>>> *regs, long err)
>>> else
>>> seq_buf_puts(&s, "BE ");
>>> + seq_buf_puts(&s, "PAGE_SIZE=");
>>> + if (IS_ENABLED(CONFIG_PPC_4K_PAGES))
>>> + seq_buf_puts(&s, "4K ");
>>> + else if (IS_ENABLED(CONFIG_PPC_16K_PAGES))
>>> + seq_buf_puts(&s, "16K ");
>>> + else if (IS_ENABLED(CONFIG_PPC_64K_PAGES))
>>> + seq_buf_puts(&s, "64K ");
>>> + else if (IS_ENABLED(CONFIG_PPC_256K_PAGES))
>>> + seq_buf_puts(&s, "256K ");
>>
>> Can't we build all the above at once using PAGE_SHIFT ?
>>
>> Something like (untested):
>>
>> "%dK ", 1 << (PAGE_SHIFT - 10)
>
> Or even simplier:
>
> "%dK ", PAGE_SIZE / 1024
Yep, good point.
Clearly I have forgotten how to program over the break (if I ever knew).
cheers
More information about the Linuxppc-dev
mailing list