* [PATCH] prevent nested panic from soft lockup detection
@ 2006-01-30 9:08 Jan Beulich
2006-01-30 14:58 ` Dave Jones
0 siblings, 1 reply; 4+ messages in thread
From: Jan Beulich @ 2006-01-30 9:08 UTC (permalink / raw)
To: linux-kernel
[-- Attachment #1: Type: text/plain, Size: 158 bytes --]
From: Jan Beulich <jbeulich@novell.com>
Suppress triggering a nested panic due to soft lockup detection.
Signed-Off-By: Jan Beulich <jbeulich@novell.com>
[-- Attachment #2: linux-2.6.16-rc1-panic-softlockup.patch --]
[-- Type: text/plain, Size: 900 bytes --]
From: Jan Beulich <jbeulich@novell.com>
Suppress triggering a nested panic due to soft lockup detection.
Signed-Off-By: Jan Beulich <jbeulich@novell.com>
diff -Npru /home/jbeulich/tmp/linux-2.6.16-rc1/kernel/panic.c 2.6.16-rc1-panic-softlockup/kernel/panic.c
--- /home/jbeulich/tmp/linux-2.6.16-rc1/kernel/panic.c 2006-01-27 15:10:49.000000000 +0100
+++ 2.6.16-rc1-panic-softlockup/kernel/panic.c 2006-01-25 09:55:53.000000000 +0100
@@ -107,6 +107,7 @@ NORET_TYPE void panic(const char * fmt,
printk(KERN_EMERG "Rebooting in %d seconds..",panic_timeout);
for (i = 0; i < panic_timeout*1000; ) {
touch_nmi_watchdog();
+ touch_softlockup_watchdog();
i += panic_blink(i);
mdelay(1);
i++;
@@ -130,6 +131,7 @@ NORET_TYPE void panic(const char * fmt,
#endif
local_irq_enable();
for (i = 0;;) {
+ touch_softlockup_watchdog();
i += panic_blink(i);
mdelay(1);
i++;
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] prevent nested panic from soft lockup detection
2006-01-30 9:08 [PATCH] prevent nested panic from soft lockup detection Jan Beulich
@ 2006-01-30 14:58 ` Dave Jones
0 siblings, 0 replies; 4+ messages in thread
From: Dave Jones @ 2006-01-30 14:58 UTC (permalink / raw)
To: Jan Beulich; +Cc: linux-kernel
On Mon, Jan 30, 2006 at 10:08:33AM +0100, Jan Beulich wrote:
> From: Jan Beulich <jbeulich@novell.com>
>
> Suppress triggering a nested panic due to soft lockup detection.
>
> Signed-Off-By: Jan Beulich <jbeulich@novell.com>
>
> diff -Npru /home/jbeulich/tmp/linux-2.6.16-rc1/kernel/panic.c 2.6.16-rc1-panic-softlockup/kernel/panic.c
> --- /home/jbeulich/tmp/linux-2.6.16-rc1/kernel/panic.c 2006-01-27 15:10:49.000000000 +0100
> +++ 2.6.16-rc1-panic-softlockup/kernel/panic.c 2006-01-25 09:55:53.000000000 +0100
> @@ -107,6 +107,7 @@ NORET_TYPE void panic(const char * fmt,
> printk(KERN_EMERG "Rebooting in %d seconds..",panic_timeout);
> for (i = 0; i < panic_timeout*1000; ) {
> touch_nmi_watchdog();
> + touch_softlockup_watchdog();
> i += panic_blink(i);
> mdelay(1);
> i++;
> @@ -130,6 +131,7 @@ NORET_TYPE void panic(const char * fmt,
> #endif
> local_irq_enable();
> for (i = 0;;) {
> + touch_softlockup_watchdog();
> i += panic_blink(i);
> mdelay(1);
> i++;
I've been wondering for a while why we don't just make touch_nmi_watchdog
do an implicit call to touch_softlockup_watchdog. I can't think of a situation
where we'd want to do one but not the other, and adding patches like this
seems to be an uphill battle (I know at least two other places that need
this off the top of my head).
Dave
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] prevent nested panic from soft lockup detection
[not found] ` <20060130145850.GB9752@redhat.com.suse.lists.linux.kernel>
@ 2006-01-31 12:35 ` Andi Kleen
2006-01-31 13:46 ` Jan Beulich
0 siblings, 1 reply; 4+ messages in thread
From: Andi Kleen @ 2006-01-31 12:35 UTC (permalink / raw)
To: Dave Jones; +Cc: linux-kernel, jbeulich
Dave Jones <davej@redhat.com> writes:
> On Mon, Jan 30, 2006 at 10:08:33AM +0100, Jan Beulich wrote:
>
> > From: Jan Beulich <jbeulich@novell.com>
> >
> > Suppress triggering a nested panic due to soft lockup detection.
> >
> > Signed-Off-By: Jan Beulich <jbeulich@novell.com>
> >
> > diff -Npru /home/jbeulich/tmp/linux-2.6.16-rc1/kernel/panic.c 2.6.16-rc1-panic-softlockup/kernel/panic.c
> > --- /home/jbeulich/tmp/linux-2.6.16-rc1/kernel/panic.c 2006-01-27 15:10:49.000000000 +0100
> > +++ 2.6.16-rc1-panic-softlockup/kernel/panic.c 2006-01-25 09:55:53.000000000 +0100
> > @@ -107,6 +107,7 @@ NORET_TYPE void panic(const char * fmt,
> > printk(KERN_EMERG "Rebooting in %d seconds..",panic_timeout);
> > for (i = 0; i < panic_timeout*1000; ) {
> > touch_nmi_watchdog();
> > + touch_softlockup_watchdog();
> > i += panic_blink(i);
> > mdelay(1);
> > i++;
> > @@ -130,6 +131,7 @@ NORET_TYPE void panic(const char * fmt,
> > #endif
> > local_irq_enable();
> > for (i = 0;;) {
> > + touch_softlockup_watchdog();
> > i += panic_blink(i);
> > mdelay(1);
> > i++;
>
> I've been wondering for a while why we don't just make touch_nmi_watchdog
> do an implicit call to touch_softlockup_watchdog. I can't think of a situation
> where we'd want to do one but not the other, and adding patches like this
> seems to be an uphill battle (I know at least two other places that need
> this off the top of my head).
Very good idea.
Someone did it already in the SUSE kernel and it helped considerably
there.
-Andi
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] prevent nested panic from soft lockup detection
2006-01-31 12:35 ` Andi Kleen
@ 2006-01-31 13:46 ` Jan Beulich
0 siblings, 0 replies; 4+ messages in thread
From: Jan Beulich @ 2006-01-31 13:46 UTC (permalink / raw)
To: Dave Jones, Andi Kleen; +Cc: linux-kernel
>> I've been wondering for a while why we don't just make touch_nmi_watchdog
>> do an implicit call to touch_softlockup_watchdog. I can't think of a situation
>> where we'd want to do one but not the other, and adding patches like this
>> seems to be an uphill battle (I know at least two other places that need
>> this off the top of my head).
>
>Very good idea.
>
>Someone did it already in the SUSE kernel and it helped considerably
>there.
Actually, plain 2.6.15 already has this (for i386 and x86-64 at least). Hence the first of the two hunks the patch
consists of is superfluous. The second hunk, however, is still necessary (as there's no pre-existing
touch_nmi_watchdog() call there, and there also shouldn't be one as interrupts get re-enabled before getting there).
Jan
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2006-01-31 13:46 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-01-30 9:08 [PATCH] prevent nested panic from soft lockup detection Jan Beulich
2006-01-30 14:58 ` Dave Jones
[not found] <43DDE5A1.76F0.0078.0@novell.com.suse.lists.linux.kernel>
[not found] ` <20060130145850.GB9752@redhat.com.suse.lists.linux.kernel>
2006-01-31 12:35 ` Andi Kleen
2006-01-31 13:46 ` Jan Beulich
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox