[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <8ab731b4-2929-e92e-6536-35096ee66baa@roeck-us.net>
Date: Wed, 1 Aug 2018 06:19:13 -0700
From: Guenter Roeck <linux@...ck-us.net>
To: Ivid Suvarna <ivid.suvarna@...il.com>,
Kees Cook <keescook@...omium.org>,
Arnd Bergmann <arnd@...db.de>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Jason Baron <jbaron@...hat.com>
Cc: Kernel development list <linux-kernel@...r.kernel.org>,
Joe Perches <joe@...ches.com>, linux-arm-msm@...r.kernel.org
Subject: Re: arm64: pstore: printk causing hang during boot in __memcpy_toio
with pstore enabled
On 08/01/2018 05:35 AM, Ivid Suvarna wrote:
> Hi,
>
> When pstore is enabled and a *pr_info(any printk) in
> __memcpy_toio(arch/arm64/kernel/io.c)* is added, kernel wont boot and
> just hangs.
>
> The path where __memcpy_toio is called is below:
>
> ->persistent_ram_update
> -> memcpy_toio
> -> __memcpy_toio
>
> I tried with trace_printk and kernel boots fine. I understand that
> printk has overhead, but is this expected when we use some printk
> statement in __memcpy_toio?
>
I think the problem may be that the printk() output is copied to pstore.
Since pstore calls memcpy_toio(), you get a nice recursion if you add a
printk() call to it.
Guenter
Powered by blists - more mailing lists