[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20111223101917.GA4749@elte.hu>
Date: Fri, 23 Dec 2011 11:19:17 +0100
From: Ingo Molnar <mingo@...e.hu>
To: Dave Jones <davej@...hat.com>,
Linux Kernel <linux-kernel@...r.kernel.org>
Cc: Peter Zijlstra <a.p.zijlstra@...llo.nl>,
Mike Galbraith <efault@....de>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Dave Airlie <airlied@...hat.com>,
Andrew Morton <akpm@...ux-foundation.org>
Subject: Re: [rfc] disable scheduler warnings during oopses.
* Dave Jones <davej@...hat.com> 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@...hat.com>
>
> 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.
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 ...
Thanks,
Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists