On Mon, 2009-10-26 at 18:41 +0300, Sergei Shtylyov wrote: > Hello. > > Wu Zhangjin wrote: > > > There is an exisiting common ftrace_test_stop_func() in > > kernel/trace/ftrace.c, which is used to check the global variable > > ftrace_trace_stop to determine whether stop the function tracing. > > > This patch implepment the MIPS specific one to speedup the procedure. > > > Thanks goes to Zhang Le for Cleaning it up. > > > Signed-off-by: Wu Zhangjin <wuzhangjin@xxxxxxxxx> > > [...] > > > diff --git a/arch/mips/kernel/mcount.S b/arch/mips/kernel/mcount.S > > index 0c39bc8..5dfaca8 100644 > > --- a/arch/mips/kernel/mcount.S > > +++ b/arch/mips/kernel/mcount.S > > @@ -64,6 +64,10 @@ > > .endm > > > > NESTED(_mcount, PT_SIZE, ra) > > + lw t0, function_trace_stop > > + bnez t0, ftrace_stub > > + nop > > 1) unless .set noreorder is specified in this file, explicit nop is not needed; >From patch 4: +++ b/arch/mips/kernel/mcount.S @@ -0,0 +1,89 @@ +/* + * MIPS specific _mcount support + * + * This file is subject to the terms and conditions of the GNU General Public + * License. See the file "COPYING" in the main directory of this archive for + * more details. + * + * Copyright (C) 2009 Lemote Inc. & DSLab, Lanzhou University, China + * Author: Wu Zhangjin <wuzj@xxxxxxxxxx> + */ + +#include <asm/regdef.h> +#include <asm/stackframe.h> +#include <asm/ftrace.h> + + .text + .set noreorder + .set noat -- Steve > > 2) delay slot instruction is usually denoted by adding extra space on its > left, like this: > > bnez t0, ftrace_stub > nop