[PATCH 5/5] powerpc/ppc32: static ftrace fixes for PPC32

Steven Rostedt rostedt at goodmis.org
Thu Nov 27 09:41:41 EST 2008


On Wed, 26 Nov 2008, Steven Rostedt wrote:

> From: Steven Rostedt <rostedt at gollum.(none)>

Ah, I need to add GIT_AUTHOR on my PowerBook. And yes, it's name
is gollum ;-)

I'll fix this and push it again.

-- Steve

> 
> Impact: fix for PowerPC 32 code
> 
> There were some early init code that was not safe for static
> ftrace to boot on my PowerBook. This code must only use relative
> addressing, and static mcount performs a compare of the
> ftrace_trace_function pointer, and gets that with an absolute address.
> In the early init boot up code, this will cause a fault.
> 
> This patch removes tracing from the files containing the offending
> functions.
> 
> Signed-off-by: Steven Rostedt <rostedt at gollum.(none)>
> ---
>  arch/powerpc/kernel/Makefile |    1 +
>  arch/powerpc/lib/Makefile    |    3 +++
>  2 files changed, 4 insertions(+), 0 deletions(-)
> 
> diff --git a/arch/powerpc/kernel/Makefile b/arch/powerpc/kernel/Makefile
> index 92673b4..d17edb4 100644
> --- a/arch/powerpc/kernel/Makefile
> +++ b/arch/powerpc/kernel/Makefile
> @@ -17,6 +17,7 @@ ifdef CONFIG_FUNCTION_TRACER
>  CFLAGS_REMOVE_cputable.o = -pg -mno-sched-epilog
>  CFLAGS_REMOVE_prom_init.o = -pg -mno-sched-epilog
>  CFLAGS_REMOVE_btext.o = -pg -mno-sched-epilog
> +CFLAGS_REMOVE_prom.o = -pg -mno-sched-epilog
>  
>  ifdef CONFIG_DYNAMIC_FTRACE
>  # dynamic ftrace setup.
> diff --git a/arch/powerpc/lib/Makefile b/arch/powerpc/lib/Makefile
> index d69912c..8db3527 100644
> --- a/arch/powerpc/lib/Makefile
> +++ b/arch/powerpc/lib/Makefile
> @@ -6,6 +6,9 @@ ifeq ($(CONFIG_PPC64),y)
>  EXTRA_CFLAGS		+= -mno-minimal-toc
>  endif
>  
> +CFLAGS_REMOVE_code-patching.o = -pg
> +CFLAGS_REMOVE_feature-fixups.o = -pg
> +
>  obj-y			:= string.o alloc.o \
>  			   checksum_$(CONFIG_WORD_SIZE).o
>  obj-$(CONFIG_PPC32)	+= div64.o copy_32.o crtsavres.o
> -- 
> 1.5.6.5
> 
> -- 
> 
> 



More information about the Linuxppc-dev mailing list