[<prev] [next>] [day] [month] [year] [list]
Message-ID: <CANN689EA6U+fVy3M1WFC0O-c_HZDSNGYnwYRf_uvqZLQNx2hYQ@mail.gmail.com>
Date: Wed, 5 Jun 2013 00:48:50 -0700
From: Michel Lespinasse <walken@...gle.com>
To: LKML <linux-kernel@...r.kernel.org>,
Thomas Gleixner <tglx@...utronix.de>,
Ingo Molnar <mingo@...hat.com>,
"H. Peter Anvin" <hpa@...or.com>, x86@...nel.org
Subject: trigger_all_cpu_backtrace() is ignored on x86
Hi,
I am having a funny issue with code that tries to use
trigger_all_cpu_backtrace(). I would expect this function to dump
backtraces on architectures that support it, including x86. However as
it turns out, include/linux/nmi.h includes asm/irq.h but not
asm/nmi.h, so it misses the arch/x86/include/asm/nmi.h definition of
arch_trigger_all_cpu_backtrace and falls back to what it'd do for
architectures that don't have this function.
I would suggest the following straightforward fix:
diff --git a/include/linux/nmi.h b/include/linux/nmi.h
index db50840e6355..6549df520dd3 100644
--- a/include/linux/nmi.h
+++ b/include/linux/nmi.h
@@ -6,6 +6,7 @@
#include <linux/sched.h>
#include <asm/irq.h>
+#include <asm/nmi.h>
/**
* touch_nmi_watchdog - restart NMI watchdog timeout.
However, I am slightly confused by the fact that
arch/x86/kernel/apic/hw_nmi.c also encloses the
arch_trigger_all_cpu_backtrace() definition within #ifdef
arch_trigger_all_cpu_backtrace - so I can't tell if the definition
from arch/x86/include/asm/nmi.h is intended to take effect or if there
is some subtle point explaining why things are as they are.
Help anyone ?
Thanks,
--
Michel "Walken" Lespinasse
A program is never fully debugged until the last user dies.
--
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