Re: printk: Add process name information to printk() output.

From: Greg KH
Date: Fri Sep 04 2020 - 05:05:20 EST


On Fri, Sep 04, 2020 at 05:24:38PM +0900, Changki Kim wrote:
> Printk() meesages are the most basic and useful debug method.
> However, additional information needs in multi-processor.
> If we add messages with processor id and process name, we can find
> a problem only with messages when the problem occurs with H/W IP or CPU.
> This is very useful in narrowing down the scope of the problems.
>
> Therefore, instead of trying to help buffering, let's try to help
> reconstructing messages by saving caller information as of calling
> log_store() and adding it as "[$processor_id: $process_name: $thread_id]"
> upon printing to consoles.
>
> Some examples for console output:
>
> [ 0.059580] [0: swapper/0: 1] CPU: All CPU(s) started at EL1i
> [ 2.153157] [5: init: 1] migov: complete to probe migov
> [ 7.441317] [4: init: 1] NET: Registered protocol family 39
> [ 22.793389] [5: kworker/u16:1: 184] SMP: stopping secondary CPUs
>
> Signed-off-by: Changki Kim <changki.kim@xxxxxxxxxxx>
> ---
> kernel/printk/printk.c | 20 ++++++++++++++++++--
> kernel/printk/printk_ringbuffer.h | 7 +++++++
> lib/Kconfig.debug | 16 ++++++++++++++++
> 3 files changed, 41 insertions(+), 2 deletions(-)

Isn't the CPU number already present if you want it today? Why add it
again?

thanks,

greg k-h