Re: [RFC][PATCHv4 3/6] printk: introduce per-cpu safe_print seq buffer

From: Sergey Senozhatsky
Date: Thu Dec 01 2016 - 00:32:47 EST


On (11/24/16 17:58), Petr Mladek wrote:
[..]
> > +/*
> > + * Lockless printk(), to avoid deadlocks should the printk() recurse
> > + * into itself. It uses a per-CPU buffer to store the message, just like
> > + * NMI.
> > + */
> > +static int vprintk_safe(const char *fmt, va_list args)
> > +{
> > + struct printk_safe_seq_buf *s = this_cpu_ptr(&safe_print_seq);
> > +
> > + return printk_safe_log_store(s, fmt, args);
>
> We should return zero if printk_safe_log_store() returns an error.
> I know that it will get fixed in the next patch. But we should do
> some minimum sanity check here because of bisection.

by the way. vprintk_safe() and the entire printk_safe mechanism are
not yet used in this patch. the patch that enables it comes in later.

-ss