Re: [rfc] disable scheduler warnings during oopses.

From: Peter Zijlstra
Date: Fri Dec 23 2011 - 07:06:38 EST


On Fri, 2011-12-23 at 11:19 +0100, Ingo Molnar wrote:
> * Dave Jones <davej@xxxxxxxxxx> wrote:
>
> > The panic-on-framebuffer code seems to cause a schedule
> > to occur during an oops. This causes a bunch of extra
> > spew as can be seen in https://bugzilla.redhat.com/attachment.cgi?id=549230
> >
> > Would this (untested) patch be sufficient here, or does the drm
> > code need rearchitecting to not perform allocations during panic ?
> >
> > Signed-off-by: Dave Jones <davej@xxxxxxxxxx>
> >
> > diff --git a/kernel/sched.c b/kernel/sched.c
> > index d6b149c..627f788 100644
> > --- a/kernel/sched.c
> > +++ b/kernel/sched.c
> > @@ -4321,6 +4321,9 @@ static noinline void __schedule_bug(struct task_struct *prev)
> > {
> > struct pt_regs *regs = get_irq_regs();
> >
> > + if (oops_in_progress)
> > + return;
> > +
> > printk(KERN_ERR "BUG: scheduling while atomic: %s/%d/0x%08x\n",
> > prev->comm, prev->pid, preempt_count());
> >
>
> Doing that makes sense - if an oops in going on we don't want to
> produce recursive messages. Note that scheduler code has been
> moved to kernel/sched/, so i've changed the patch accordingly.

Urgh I would actually argue against merging this. What the KSM console
does is horridly wrong, and simply papering over it doesn't help its
cause. Its up there with USB-Serial console on wrongness.

> Note that despite that, the DRM code *definitely* needs to be
> fixed to not allocate and schedule while printing on the
> framebuffer in KMS mode ...

For sure, its plain insane and completely unreliable.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/