From: Ingo Molnar <mingo@elte.hu>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: linux-kernel@vger.kernel.org,
Thomas Gleixner <tglx@linutronix.de>,
bugme-daemon@bugzilla.kernel.org, j_kernel@hoblitt.com
Subject: Re: [Bugme-new] [Bug 11543] New: kernel panic: softlockup in tick_periodic() ???
Date: Fri, 12 Sep 2008 11:13:08 +0200 [thread overview]
Message-ID: <20080912091308.GA10305@elte.hu> (raw)
In-Reply-To: <20080911170258.aa0bea0d.akpm@linux-foundation.org>
* Andrew Morton <akpm@linux-foundation.org> wrote:
> I can't work out who called panic(), nor why.
>
> The panic code called the kexec code which called mutex_trylock()
> which called spin_lock_mutex() which then stupidly went and blurted a
> load of debug stuff because of in_interrupt().
agreed - applied your fix in the form below to tip/master - thanks
Andrew.
J, you might want to try tip/master, it includes all known fixes for
this area and this debug improvement as well. You can pick it up via:
http://people.redhat.com/mingo/tip.git/README
Ingo
---------->
>From 53b9d87f41a3d8838210ad7cdef02d814817ce85 Mon Sep 17 00:00:00 2001
From: Andrew Morton <akpm@linux-foundation.org>
Date: Thu, 11 Sep 2008 17:02:58 -0700
Subject: [PATCH] lock debug: sit tight when we are already in a panic
in:
> http://bugzilla.kernel.org/show_bug.cgi?id=11543
The panic code called the kexec code which called mutex_trylock() which
called spin_lock_mutex() which then stupidly went and blurted a load of
debug stuff because of in_interrupt().
Keep the lock debug code from escallating an already crappy situation.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
---
include/linux/debug_locks.h | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/include/linux/debug_locks.h b/include/linux/debug_locks.h
index 4aaa4af..096476f 100644
--- a/include/linux/debug_locks.h
+++ b/include/linux/debug_locks.h
@@ -17,7 +17,7 @@ extern int debug_locks_off(void);
({ \
int __ret = 0; \
\
- if (unlikely(c)) { \
+ if (!oops_in_progress && unlikely(c)) { \
if (debug_locks_off() && !debug_locks_silent) \
WARN_ON(1); \
__ret = 1; \
next prev parent reply other threads:[~2008-09-12 9:13 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <bug-11543-10286@http.bugzilla.kernel.org/>
2008-09-12 0:02 ` [Bugme-new] [Bug 11543] New: kernel panic: softlockup in tick_periodic() ??? Andrew Morton
2008-09-12 2:54 ` j_kernel
2008-09-12 2:57 ` Andrew Morton
2008-09-12 9:13 ` Ingo Molnar [this message]
2008-09-13 0:13 ` Joshua Hoblitt
2008-09-15 21:06 ` Joshua Hoblitt
2008-09-16 2:54 ` Joshua Hoblitt
2008-09-16 14:14 ` Thomas Gleixner
2008-09-16 17:56 ` Cyrill Gorcunov
2008-09-16 17:57 ` Cyrill Gorcunov
2008-09-17 2:43 j_kernel
2008-09-17 7:13 ` Cyrill Gorcunov
2008-09-17 9:20 ` j_kernel
2008-09-17 9:38 ` Cyrill Gorcunov
2008-09-17 12:59 ` Cyrill Gorcunov
2008-09-17 13:13 ` Ingo Molnar
2008-09-17 13:29 ` Cyrill Gorcunov
2008-09-17 16:27 ` Cyrill Gorcunov
2008-09-17 20:48 ` j_kernel
2008-09-18 7:09 ` Cyrill Gorcunov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20080912091308.GA10305@elte.hu \
--to=mingo@elte.hu \
--cc=akpm@linux-foundation.org \
--cc=bugme-daemon@bugzilla.kernel.org \
--cc=j_kernel@hoblitt.com \
--cc=linux-kernel@vger.kernel.org \
--cc=tglx@linutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.