Commit 15adc048 authored by Steven Rostedt's avatar Steven Rostedt Committed by Ingo Molnar

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: default avatarSteven Rostedt <srostedt@redhat.com>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent 08f5ac90
...@@ -28,17 +28,17 @@ static unsigned int ftrace_nop = 0x60000000; ...@@ -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) ...@@ -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, ...@@ -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;
......
...@@ -5,6 +5,8 @@ ...@@ -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 \
......
...@@ -9,12 +9,12 @@ ...@@ -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) ...@@ -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, ...@@ -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;
......
...@@ -11,6 +11,7 @@ ifdef CONFIG_FUNCTION_TRACER ...@@ -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
# #
......
...@@ -33,17 +33,17 @@ union ftrace_code_union { ...@@ -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) ...@@ -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, ...@@ -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;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment