Re: [PATCHv7 4/8] printk: always use deferred printk when flush printk_safe lines

From: Petr Mladek
Date: Thu Feb 02 2017 - 10:38:01 EST


On Thu 2017-02-02 15:05:38, Sergey Senozhatsky wrote:
> On (02/01/17 11:06), Steven Rostedt wrote:
> [..]
> > > static void printk_safe_flush_line(const char *text, int len)
> > > {
> > > /*
> > > - * The buffers are flushed in NMI only on panic. The messages must
> > > - * go only into the ring buffer at this stage. Consoles will get
> > > - * explicitly called later when a crashdump is not generated.
> > > + * Avoid any console drivers calls from here, because we may be
> > > + * in NMI or printk_safe context (when in panic). The messages
> > > + * must go only into the ring buffer at this stage. Consoles will
> > > + * get explicitly called later when a crashdump is not generated.
> > > */
> > > - if (in_nmi())
> > > - printk_deferred("%.*s", len, text);
> > > - else
> > > - printk("%.*s", len, text);
> > > + printk_deferred("%.*s", len, text);
> > > }
> >
> > The helper function was there because of the if statement. Just nuke
> > this function and call printk_deferred() directly. You can move the
> > comment to the caller.
>
> indeed. thanks.
>
> Petr, how would you prefer to handle this?

I am still learning how to manage the patches in the printk.git tree.

I would like to add Steven's Reviewed-by tags, links to the mails,
and list of CC-ed people. IMHO, the only way is to rebase the for-4.11
and for-next branches. Then I could do the above suggested change during
the rebase.

Any other solutions are welcome. I will wait with the rebase at least
until Monday. We are discussing the lockdep in the 6th patch anyway.

Best Regards,
Petr