Message ID | 20090327230834.93d0221d.sfr@canb.auug.org.au (mailing list archive) |
---|---|
State | Accepted, archived |
Commit | a095bdbb136f7bed96b7adf5aa1dd27bb2f839bf |
Headers | show |
On Fri, 2009-03-27 at 23:08 +1100, Stephen Rothwell wrote: > Hi all, > > Today's linux-next build (powerpc allyesconfig) failed like this: > > arch/powerpc/kernel/ftrace.c: In function 'prepare_ftrace_return': > arch/powerpc/kernel/ftrace.c:612: warning: passing argument 3 of 'ftrace_push_return_trace' makes pointer from integer without a cast > arch/powerpc/kernel/ftrace.c:612: error: too many arguments to function 'ftrace_push_return_trace' > > Caused by commit 5d1a03dc541dc6672e60e57249ed22f40654ca47 > ("function-graph: moved the timestamp from arch to generic code") from > the tracing tree which (removed an argument from > ftrace_push_return_trace()) interacting with commit > 6794c78243bfda020ab184d6d578944f8e90d26c ("powerpc64: port of the > function graph tracer") from the powerpc tree. > > I added the following patch and can carry it as necessary. Thanks Stephen!!! I knew this was going to break, but I needed to wait till powerpc merged with tip before I could make the change. > -- > Cheers, > Stephen Rothwell sfr@canb.auug.org.au > http://www.canb.auug.org.au/~sfr/ > > From: Stephen Rothwell <sfr@canb.auug.org.au> > Date: Fri, 27 Mar 2009 22:47:58 +1100 > Subject: [PATCH] tracing: fixup for ftrace_push_return_trace API change > > Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> > --- > arch/powerpc/kernel/ftrace.c | 6 +----- > 1 files changed, 1 insertions(+), 5 deletions(-) > > diff --git a/arch/powerpc/kernel/ftrace.c b/arch/powerpc/kernel/ftrace.c > index 5b5d16b..5455943 100644 > --- a/arch/powerpc/kernel/ftrace.c > +++ b/arch/powerpc/kernel/ftrace.c > @@ -557,7 +557,6 @@ extern void mod_return_to_handler(void); > void prepare_ftrace_return(unsigned long *parent, unsigned long self_addr) > { > unsigned long old; > - unsigned long long calltime; > int faulted; > struct ftrace_graph_ent trace; > unsigned long return_hooker = (unsigned long)&return_to_handler; > @@ -606,10 +605,7 @@ void prepare_ftrace_return(unsigned long *parent, unsigned long self_addr) > return; > } > > - calltime = cpu_clock(raw_smp_processor_id()); > - > - if (ftrace_push_return_trace(old, calltime, > - self_addr, &trace.depth) == -EBUSY) { > + if (ftrace_push_return_trace(old, self_addr, &trace.depth) == -EBUSY) { This is exactly what I would have done. Acked-by: Steven Rostedt <srostedt@redhat.com> -- Steve > *parent = old; > return; > }
Hi Steve, On Fri, 27 Mar 2009 08:48:51 -0400 Steven Rostedt <srostedt@redhat.com> wrote: > > I knew this was going to break, but I needed to wait till powerpc merged > with tip before I could make the change. Yeah, a bit of a pain but we can live with it for a while. > This is exactly what I would have done. Thanks for the confirmation. I guess I will keep applying this until one tree or the other hits mainline at which point it can be fixed in the other tree.
Hi all, This patch is now applicable to the tracing tree after merging with Linus' tree. On Fri, 27 Mar 2009 08:48:51 -0400 Steven Rostedt <srostedt@redhat.com> wrote: > > > On Fri, 2009-03-27 at 23:08 +1100, Stephen Rothwell wrote: > > Hi all, > > > > Today's linux-next build (powerpc allyesconfig) failed like this: > > > > arch/powerpc/kernel/ftrace.c: In function 'prepare_ftrace_return': > > arch/powerpc/kernel/ftrace.c:612: warning: passing argument 3 of 'ftrace_push_return_trace' makes pointer from integer without a cast > > arch/powerpc/kernel/ftrace.c:612: error: too many arguments to function 'ftrace_push_return_trace' > > > > Caused by commit 5d1a03dc541dc6672e60e57249ed22f40654ca47 > > ("function-graph: moved the timestamp from arch to generic code") from > > the tracing tree which (removed an argument from > > ftrace_push_return_trace()) interacting with commit > > 6794c78243bfda020ab184d6d578944f8e90d26c ("powerpc64: port of the > > function graph tracer") from the powerpc tree. > > > > I added the following patch and can carry it as necessary. > > Thanks Stephen!!! > > I knew this was going to break, but I needed to wait till powerpc merged > with tip before I could make the change. > > > -- > > Cheers, > > Stephen Rothwell sfr@canb.auug.org.au > > http://www.canb.auug.org.au/~sfr/ > > > > From: Stephen Rothwell <sfr@canb.auug.org.au> > > Date: Fri, 27 Mar 2009 22:47:58 +1100 > > Subject: [PATCH] tracing: fixup for ftrace_push_return_trace API change > > > > Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> > > --- > > arch/powerpc/kernel/ftrace.c | 6 +----- > > 1 files changed, 1 insertions(+), 5 deletions(-) > > > > diff --git a/arch/powerpc/kernel/ftrace.c b/arch/powerpc/kernel/ftrace.c > > index 5b5d16b..5455943 100644 > > --- a/arch/powerpc/kernel/ftrace.c > > +++ b/arch/powerpc/kernel/ftrace.c > > @@ -557,7 +557,6 @@ extern void mod_return_to_handler(void); > > void prepare_ftrace_return(unsigned long *parent, unsigned long self_addr) > > { > > unsigned long old; > > - unsigned long long calltime; > > int faulted; > > struct ftrace_graph_ent trace; > > unsigned long return_hooker = (unsigned long)&return_to_handler; > > @@ -606,10 +605,7 @@ void prepare_ftrace_return(unsigned long *parent, unsigned long self_addr) > > return; > > } > > > > - calltime = cpu_clock(raw_smp_processor_id()); > > - > > - if (ftrace_push_return_trace(old, calltime, > > - self_addr, &trace.depth) == -EBUSY) { > > + if (ftrace_push_return_trace(old, self_addr, &trace.depth) == -EBUSY) { > > This is exactly what I would have done. > > Acked-by: Steven Rostedt <srostedt@redhat.com> > > -- Steve > > > *parent = old; > > return; > > } >
* Stephen Rothwell <sfr@canb.auug.org.au> wrote: > Hi all, > > This patch is now applicable to the tracing tree after merging > with Linus' tree. Thanks, that's useful info. There's the skb tracepoints related merge fixlet needed too. Anything else in this context you are aware of? Ingo
Hi Ingo, [Its midnight, so this is just a quick reply.] On Wed, 1 Apr 2009 14:51:48 +0200 Ingo Molnar <mingo@elte.hu> wrote: > > * Stephen Rothwell <sfr@canb.auug.org.au> wrote: > > > This patch is now applicable to the tracing tree after merging > > with Linus' tree. > > Thanks, that's useful info. > > There's the skb tracepoints related merge fixlet needed too. > Anything else in this context you are aware of? They are the only two build fixes I have at the moment. On top of that these are the only conflicts I get when merging the tip trees: Merging tip-core/auto-core-next CONFLICT (content): Merge conflict in include/linux/netfilter/xt_limit.h CONFLICT (content): Merge conflict in include/linux/netfilter/xt_statistic.h CONFLICT (content): Merge conflict in lib/Kconfig.debug Merging cpus4096/auto-cpus4096-next CONFLICT (content): Merge conflict in arch/x86/include/asm/topology.h CONFLICT (content): Merge conflict in arch/x86/kernel/cpu/common.c CONFLICT (content): Merge conflict in arch/x86/kernel/cpu/intel_cacheinfo.c CONFLICT (content): Merge conflict in drivers/oprofile/buffer_sync.c Merging tracing/auto-tracing-next CONFLICT (add/add): Merge conflict in arch/parisc/include/asm/ftrace.h CONFLICT (content): Merge conflict in include/linux/slub_def.h CONFLICT (content): Merge conflict in kernel/extable.c CONFLICT (content): Merge conflict in mm/slob.c CONFLICT (content): Merge conflict in mm/slub.c I think these are mostly trivial (except the parisc one you commented on before). Some are caused by the same commit being in two trees and further work in one of them. Anything non-tivial will have been reported previously.
diff --git a/arch/powerpc/kernel/ftrace.c b/arch/powerpc/kernel/ftrace.c index 5b5d16b..5455943 100644 --- a/arch/powerpc/kernel/ftrace.c +++ b/arch/powerpc/kernel/ftrace.c @@ -557,7 +557,6 @@ extern void mod_return_to_handler(void); void prepare_ftrace_return(unsigned long *parent, unsigned long self_addr) { unsigned long old; - unsigned long long calltime; int faulted; struct ftrace_graph_ent trace; unsigned long return_hooker = (unsigned long)&return_to_handler; @@ -606,10 +605,7 @@ void prepare_ftrace_return(unsigned long *parent, unsigned long self_addr) return; } - calltime = cpu_clock(raw_smp_processor_id()); - - if (ftrace_push_return_trace(old, calltime, - self_addr, &trace.depth) == -EBUSY) { + if (ftrace_push_return_trace(old, self_addr, &trace.depth) == -EBUSY) { *parent = old; return; }