[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20070117020343.8622e44d.akpm@osdl.org>
Date: Wed, 17 Jan 2007 02:03:43 -0800
From: Andrew Morton <akpm@...l.org>
To: Ingo Molnar <mingo@...e.hu>
Cc: rmk+lkml@....linux.org.uk, linux-kernel@...r.kernel.org
Subject: Re: [patch] fix emergency reboot: call reboot notifier list if
possible
> On Wed, 17 Jan 2007 10:39:17 +0100 Ingo Molnar <mingo@...e.hu> wrote:
>
> * Russell King <rmk+lkml@....linux.org.uk> wrote:
>
> > On Wed, Jan 17, 2007 at 10:13:19AM +0100, Ingo Molnar wrote:
> > > we dont call the reboot notifiers during emergency reboot mainly because
> > > it could be called from atomic context and reboot notifiers are a
> > > blocking notifier list. But actually the kernel is often perfectly
> > > reschedulable in this stage, so we could as well process the
> > > reboot_notifier_list.
> >
> > My experience has been that when there has been the need to use this
> > facility, the kernel hasn't been reschedulable. [...]
>
> this decision is totally automatic - so if your situation happens and
> the kernel isnt reschedulable, then the notifier chain wont be called
> and nothing changes from your perspective. Hm, perhaps this should be
> dependent on CONFIG_PREEMPT, to make sure preempt_count() is reliable?
>
> but from my perspective this patch fixes a real regression.
>
> updated patch attached below.
>
Making it dependent upon CONFIG_PREEMPT seems a bit sucky. Perhaps pass in
some "you were called from /proc/sysrq-trigger" notification?
Also, there are ways of telling if the kernel has oopsed (oops counter,
oops_in_progress, etc) which should perhaps be tested.
Or just learn to type `reboot -fn' ;)
-
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