Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752613AbYAWVbt (ORCPT ); Wed, 23 Jan 2008 16:31:49 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751195AbYAWVbm (ORCPT ); Wed, 23 Jan 2008 16:31:42 -0500 Received: from tomts16.bellnexxia.net ([209.226.175.4]:46109 "EHLO tomts16-srv.bellnexxia.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750919AbYAWVbl (ORCPT ); Wed, 23 Jan 2008 16:31:41 -0500 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Ah4FAB5Bl0dMQWYq/2dsb2JhbACBV6xi Date: Wed, 23 Jan 2008 16:31:39 -0500 From: Mathieu Desnoyers To: Steven Rostedt Cc: LKML , Ingo Molnar , Linus Torvalds , Andrew Morton , Peter Zijlstra , Christoph Hellwig , Gregory Haskins , Arnaldo Carvalho de Melo , Thomas Gleixner , Tim Bird , Sam Ravnborg , "Frank Ch. Eigler" , Jan Kiszka , John Stultz , Arjan van de Ven , Steven Rostedt Subject: Re: [PATCH 06/20 -v5] add notrace annotations for NMI routines Message-ID: <20080123213139.GB2282@Krystal> References: <20080123160236.969334052@goodmis.org> <20080123160442.063076557@goodmis.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline In-Reply-To: <20080123160442.063076557@goodmis.org> X-Editor: vi X-Info: http://krystal.dyndns.org:8080 X-Operating-System: Linux/2.6.21.3-grsec (i686) X-Uptime: 16:31:21 up 81 days, 2:36, 5 users, load average: 0.57, 0.40, 0.20 User-Agent: Mutt/1.5.16 (2007-06-11) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3111 Lines: 78 * Steven Rostedt (rostedt@goodmis.org) wrote: > 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. > Is this still needed with the atomic clocksource read ? > Signed-off-by: Arnaldo Carvalho de Melo > Signed-off-by: Steven Rostedt > > --- > 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-23 10:26:11.000000000 -0500 > +++ linux-mcount.git/arch/x86/kernel/nmi_32.c 2008-01-23 10:26:53.000000000 -0500 > @@ -323,7 +323,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-23 10:26:11.000000000 -0500 > +++ linux-mcount.git/arch/x86/kernel/nmi_64.c 2008-01-23 10:26:53.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-23 10:26:11.000000000 -0500 > +++ linux-mcount.git/arch/x86/kernel/traps_32.c 2008-01-23 10:26:53.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; > > > -- -- Mathieu Desnoyers Computer Engineering Ph.D. Student, Ecole Polytechnique de Montreal OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/