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


Groups > linux.kernel > #1180500 > unrolled thread

Re: printk: preempt_disable with long time resulting in softlockup/RCU stall issues

Started byPetr Mladek <pmladek@suse.com>
First post2015-07-09 10:00 +0200
Last post2015-07-09 10:00 +0200
Articles 1 — 1 participant

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: printk: preempt_disable with long time resulting in  softlockup/RCU stall issues Petr Mladek <pmladek@suse.com> - 2015-07-09 10:00 +0200

#1180500 — Re: printk: preempt_disable with long time resulting in softlockup/RCU stall issues

FromPetr Mladek <pmladek@suse.com>
Date2015-07-09 10:00 +0200
SubjectRe: printk: preempt_disable with long time resulting in softlockup/RCU stall issues
Message-ID<pKeUr-5Qy-11@gated-at.bofh.it>
On Wed 2015-07-08 14:00:17, Steven Rostedt wrote:
> On Wed, 08 Jul 2015 10:35:29 -0700
> Joe Perches <joe@perches.com> wrote:
> 
> > On Wed, 2015-07-08 at 19:04 +0200, Luis R. Rodriguez wrote:
> > > On Wed, Jul 08, 2015 at 05:08:35PM +0800, Gavin Hu wrote:
> > > > Hi,
> > > > 
> > > > Yes. We should disable the printk_limit feature when panic to avoid missing
> > > > messages.
> > > 
> > > Sounds like you have been looking into it and have a good idea of what you
> > > want to do, why not try it and send some RFC patches ?
> > > 
> > > While at it, then we could consider doing different things depending on the
> > > message type. KERN_EMERG would disable preemption, whereas KERN_INFO may not be
> > > so critical to require it.
> > 
> > That might be a bit difficult to implement with complete correctness
> > given KERN_EMERG use and continuation lines.
> > 
> 
> Or just have the current context determine what to do. If printk() was
> called with preemption or interrupts disabled, it flushes the full
> buffer before returning, otherwise it allows the writes to console be
> preempted.

I am afraid that any variant of this approach will make the original
problem even worse. There will be more messages waiting and it will
increase the chance of the softlockup.

I guess that people call printk() with disabled interrupts or
preemption with the naive hope that it will be fast (just store
the message in the ring buffer and come back).

I think that we really need to break the console output when it
takes too long and schedule it somewhere else.

Best Regards,
Petr
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [standalone]


Back to top | Article view | linux.kernel


csiph-web