[PATCH 06/23 -v6] add notrace annotations for NMI routines
From: Steven Rostedt
Date: Fri Jan 25 2008 - 23:33:21 EST
This annotates NMI functions with notrace. Some tracers may be able
to live with this, but some cannot. So we turn off NMI tracing.
One solution might be to make a notrace_nmi which would only turn
off NMI tracing if a trace utility needed it off.
Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxxxxxxxxxx>
Signed-off-by: Steven Rostedt <srostedt@xxxxxxxxxx>
---
arch/x86/kernel/nmi_32.c | 2 +-
arch/x86/kernel/nmi_64.c | 2 +-
arch/x86/kernel/traps_32.c | 4 ++--
3 files changed, 4 insertions(+), 4 deletions(-)
Index: linux-mcount.git/arch/x86/kernel/nmi_32.c
===================================================================
--- linux-mcount.git.orig/arch/x86/kernel/nmi_32.c 2008-01-25 21:46:50.000000000 -0500
+++ linux-mcount.git/arch/x86/kernel/nmi_32.c 2008-01-25 21:47:08.000000000 -0500
@@ -318,7 +318,7 @@ EXPORT_SYMBOL(touch_nmi_watchdog);
extern void die_nmi(struct pt_regs *, const char *msg);
-__kprobes int nmi_watchdog_tick(struct pt_regs * regs, unsigned reason)
+notrace __kprobes int nmi_watchdog_tick(struct pt_regs *regs, unsigned reason)
{
/*
Index: linux-mcount.git/arch/x86/kernel/nmi_64.c
===================================================================
--- linux-mcount.git.orig/arch/x86/kernel/nmi_64.c 2008-01-25 21:46:50.000000000 -0500
+++ linux-mcount.git/arch/x86/kernel/nmi_64.c 2008-01-25 21:47:08.000000000 -0500
@@ -314,7 +314,7 @@ void touch_nmi_watchdog(void)
touch_softlockup_watchdog();
}
-int __kprobes nmi_watchdog_tick(struct pt_regs * regs, unsigned reason)
+notrace __kprobes int nmi_watchdog_tick(struct pt_regs *regs, unsigned reason)
{
int sum;
int touched = 0;
Index: linux-mcount.git/arch/x86/kernel/traps_32.c
===================================================================
--- linux-mcount.git.orig/arch/x86/kernel/traps_32.c 2008-01-25 21:46:50.000000000 -0500
+++ linux-mcount.git/arch/x86/kernel/traps_32.c 2008-01-25 21:47:08.000000000 -0500
@@ -723,7 +723,7 @@ void __kprobes die_nmi(struct pt_regs *r
do_exit(SIGSEGV);
}
-static __kprobes void default_do_nmi(struct pt_regs * regs)
+static notrace __kprobes void default_do_nmi(struct pt_regs *regs)
{
unsigned char reason = 0;
@@ -763,7 +763,7 @@ static __kprobes void default_do_nmi(str
static int ignore_nmis;
-fastcall __kprobes void do_nmi(struct pt_regs * regs, long error_code)
+notrace fastcall __kprobes void do_nmi(struct pt_regs *regs, long error_code)
{
int cpu;
--
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/