Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1550804 > unrolled thread

Re: [PATCHv7 3/8] printk: introduce per-cpu safe_print seq buffer

Started byPetr Mladek <pmladek@suse.com>
First post2017-01-04 14:50 +0100
Last post2017-01-05 02:10 +0100
Articles 2 — 2 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: [PATCHv7 3/8] printk: introduce per-cpu safe_print seq buffer Petr Mladek <pmladek@suse.com> - 2017-01-04 14:50 +0100
    Re: [PATCHv7 3/8] printk: introduce per-cpu safe_print seq buffer Sergey Senozhatsky <sergey.senozhatsky.work@gmail.com> - 2017-01-05 02:10 +0100

#1550804 — Re: [PATCHv7 3/8] printk: introduce per-cpu safe_print seq buffer

FromPetr Mladek <pmladek@suse.com>
Date2017-01-04 14:50 +0100
SubjectRe: [PATCHv7 3/8] printk: introduce per-cpu safe_print seq buffer
Message-ID<sVU70-5lr-27@gated-at.bofh.it>
On Tue 2016-12-27 23:16:06, Sergey Senozhatsky wrote:
> This patch extends the idea of NMI per-cpu buffers to regions
> that may cause recursive printk() calls and possible deadlocks.
> Namely, printk() can't handle printk calls from schedule code
> or printk() calls from lock debugging code (spin_dump() for instance);
> because those may be called with `sem->lock' already taken or any
> other `critical' locks (p->pi_lock, etc.). An example of deadlock
> can be
> 
> Usage example:
> 
>  printk()
>   printk_safe_enter_irqsave(flags)
>   //
>   //  any printk() call from here will endup in vprintk_safe(),
>   //  that stores messages in a special per-CPU buffer.
>   //
>   printk_safe_exit_irqrestore(flags)
> 
> Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>

I really like the new variants for printk_safe_enter/exit and
different IRQ context.

Reviewed-by: Petr Mladek <pmladek@suse.com>

Best Regards,
Petr

[toc] | [next] | [standalone]


#1551537

FromSergey Senozhatsky <sergey.senozhatsky.work@gmail.com>
Date2017-01-05 02:10 +0100
Message-ID<sW4J3-47A-13@gated-at.bofh.it>
In reply to#1550804
On (01/04/17 14:31), Petr Mladek wrote:
> On Tue 2016-12-27 23:16:06, Sergey Senozhatsky wrote:
> > This patch extends the idea of NMI per-cpu buffers to regions
> > that may cause recursive printk() calls and possible deadlocks.
> > Namely, printk() can't handle printk calls from schedule code
> > or printk() calls from lock debugging code (spin_dump() for instance);
> > because those may be called with `sem->lock' already taken or any
> > other `critical' locks (p->pi_lock, etc.). An example of deadlock
> > can be
> > 
> > Usage example:
> > 
> >  printk()
> >   printk_safe_enter_irqsave(flags)
> >   //
> >   //  any printk() call from here will endup in vprintk_safe(),
> >   //  that stores messages in a special per-CPU buffer.
> >   //
> >   printk_safe_exit_irqrestore(flags)
> > 
> > Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
> 
> I really like the new variants for printk_safe_enter/exit and
> different IRQ context.
> 
> Reviewed-by: Petr Mladek <pmladek@suse.com>

thanks.

	-ss

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web