ftrace, powerpc, sparc64, x86: remove notrace from arch ftrace file

The entire file of ftrace.c in the arch code needs to be marked
as notrace. It is much cleaner to do this from the Makefile with
CFLAGS_REMOVE_ftrace.o.

[ powerpc already had this in its Makefile. ]

Signed-off-by: Steven Rostedt <srostedt@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
Steven Rostedt 2008-10-23 09:33:08 -04:00 committed by Ingo Molnar
parent 08f5ac906d
commit 15adc04898
5 changed files with 17 additions and 14 deletions

View File

@ -28,17 +28,17 @@ static unsigned int ftrace_nop = 0x60000000;
#endif #endif
static unsigned int notrace ftrace_calc_offset(long ip, long addr) static unsigned int ftrace_calc_offset(long ip, long addr)
{ {
return (int)(addr - ip); return (int)(addr - ip);
} }
notrace unsigned char *ftrace_nop_replace(void) unsigned char *ftrace_nop_replace(void)
{ {
return (char *)&ftrace_nop; return (char *)&ftrace_nop;
} }
notrace unsigned char *ftrace_call_replace(unsigned long ip, unsigned long addr) unsigned char *ftrace_call_replace(unsigned long ip, unsigned long addr)
{ {
static unsigned int op; static unsigned int op;
@ -68,7 +68,7 @@ notrace unsigned char *ftrace_call_replace(unsigned long ip, unsigned long addr)
# define _ASM_PTR " .long " # define _ASM_PTR " .long "
#endif #endif
notrace int int
ftrace_modify_code(unsigned long ip, unsigned char *old_code, ftrace_modify_code(unsigned long ip, unsigned char *old_code,
unsigned char *new_code) unsigned char *new_code)
{ {
@ -113,7 +113,7 @@ ftrace_modify_code(unsigned long ip, unsigned char *old_code,
return faulted; return faulted;
} }
notrace int ftrace_update_ftrace_func(ftrace_func_t func) int ftrace_update_ftrace_func(ftrace_func_t func)
{ {
unsigned long ip = (unsigned long)(&ftrace_call); unsigned long ip = (unsigned long)(&ftrace_call);
unsigned char old[MCOUNT_INSN_SIZE], *new; unsigned char old[MCOUNT_INSN_SIZE], *new;

View File

@ -5,6 +5,8 @@
EXTRA_AFLAGS := -ansi EXTRA_AFLAGS := -ansi
EXTRA_CFLAGS := -Werror EXTRA_CFLAGS := -Werror
CFLAGS_REMOVE_ftrace.o = -pg
extra-y := head.o init_task.o vmlinux.lds extra-y := head.o init_task.o vmlinux.lds
obj-y := process.o setup.o cpu.o idprom.o reboot.o \ obj-y := process.o setup.o cpu.o idprom.o reboot.o \

View File

@ -9,12 +9,12 @@
static const u32 ftrace_nop = 0x01000000; static const u32 ftrace_nop = 0x01000000;
notrace unsigned char *ftrace_nop_replace(void) unsigned char *ftrace_nop_replace(void)
{ {
return (char *)&ftrace_nop; return (char *)&ftrace_nop;
} }
notrace unsigned char *ftrace_call_replace(unsigned long ip, unsigned long addr) unsigned char *ftrace_call_replace(unsigned long ip, unsigned long addr)
{ {
static u32 call; static u32 call;
s32 off; s32 off;
@ -25,7 +25,7 @@ notrace unsigned char *ftrace_call_replace(unsigned long ip, unsigned long addr)
return (unsigned char *) &call; return (unsigned char *) &call;
} }
notrace int int
ftrace_modify_code(unsigned long ip, unsigned char *old_code, ftrace_modify_code(unsigned long ip, unsigned char *old_code,
unsigned char *new_code) unsigned char *new_code)
{ {
@ -59,7 +59,7 @@ ftrace_modify_code(unsigned long ip, unsigned char *old_code,
return faulted; return faulted;
} }
notrace int ftrace_update_ftrace_func(ftrace_func_t func) int ftrace_update_ftrace_func(ftrace_func_t func)
{ {
unsigned long ip = (unsigned long)(&ftrace_call); unsigned long ip = (unsigned long)(&ftrace_call);
unsigned char old[MCOUNT_INSN_SIZE], *new; unsigned char old[MCOUNT_INSN_SIZE], *new;

View File

@ -11,6 +11,7 @@ ifdef CONFIG_FUNCTION_TRACER
CFLAGS_REMOVE_tsc.o = -pg CFLAGS_REMOVE_tsc.o = -pg
CFLAGS_REMOVE_rtc.o = -pg CFLAGS_REMOVE_rtc.o = -pg
CFLAGS_REMOVE_paravirt-spinlocks.o = -pg CFLAGS_REMOVE_paravirt-spinlocks.o = -pg
CFLAGS_REMOVE_ftrace.o = -pg
endif endif
# #

View File

@ -33,17 +33,17 @@ union ftrace_code_union {
}; };
static int notrace ftrace_calc_offset(long ip, long addr) static int ftrace_calc_offset(long ip, long addr)
{ {
return (int)(addr - ip); return (int)(addr - ip);
} }
notrace unsigned char *ftrace_nop_replace(void) unsigned char *ftrace_nop_replace(void)
{ {
return (char *)ftrace_nop; return (char *)ftrace_nop;
} }
notrace unsigned char *ftrace_call_replace(unsigned long ip, unsigned long addr) unsigned char *ftrace_call_replace(unsigned long ip, unsigned long addr)
{ {
static union ftrace_code_union calc; static union ftrace_code_union calc;
@ -57,7 +57,7 @@ notrace unsigned char *ftrace_call_replace(unsigned long ip, unsigned long addr)
return calc.code; return calc.code;
} }
notrace int int
ftrace_modify_code(unsigned long ip, unsigned char *old_code, ftrace_modify_code(unsigned long ip, unsigned char *old_code,
unsigned char *new_code) unsigned char *new_code)
{ {
@ -90,7 +90,7 @@ ftrace_modify_code(unsigned long ip, unsigned char *old_code,
return 0; return 0;
} }
notrace int ftrace_update_ftrace_func(ftrace_func_t func) int ftrace_update_ftrace_func(ftrace_func_t func)
{ {
unsigned long ip = (unsigned long)(&ftrace_call); unsigned long ip = (unsigned long)(&ftrace_call);
unsigned char old[MCOUNT_INSN_SIZE], *new; unsigned char old[MCOUNT_INSN_SIZE], *new;