public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] trace_evetns: fix napi's tracepoint
@ 2009-08-25  6:04 Xiao Guangrong
  2009-08-25  6:06 ` [PATCH 2/2] trace_events: fix the include file dependencies Xiao Guangrong
                   ` (2 more replies)
  0 siblings, 3 replies; 14+ messages in thread
From: Xiao Guangrong @ 2009-08-25  6:04 UTC (permalink / raw)
  To: Ingo Molnar
  Cc: Steven Rostedt, Frederic Weisbecker, Neil Horman, Wei Yongjun,
	LKML

Currently, the napi's tracepoint works will is depend on
"DECLARE_TRACE" definiens in include/trace/define_trace.h,
like below:

#include <trace/events/skb.h>    // include define_trace.h
#include <trace/events/napi.h>

there have error, if we remove "#include <trace/events/skb.h>"
or include napi.h in the front of include skb.h, It should
depend on the definiens in include/linux/tracepoint.h and we
can remove the "DECLARE_TRACE" definiens in
include/trace/define_trace.h, because "TRACE_EVENT" not use it

Signed-off-by: Xiao Guangrong <xiaoguangrong@cn.fujitsu.com>
---
 include/trace/define_trace.h |    4 ----
 net/core/net-traces.c        |    4 +++-
 2 files changed, 3 insertions(+), 5 deletions(-)

diff --git a/include/trace/define_trace.h b/include/trace/define_trace.h
index f7a7ae1..76e93bf 100644
--- a/include/trace/define_trace.h
+++ b/include/trace/define_trace.h
@@ -26,10 +26,6 @@
 #define TRACE_EVENT(name, proto, args, tstruct, assign, print)	\
 	DEFINE_TRACE(name)
 
-#undef DECLARE_TRACE
-#define DECLARE_TRACE(name, proto, args)	\
-	DEFINE_TRACE(name)
-
 #undef TRACE_INCLUDE
 #undef __TRACE_INCLUDE
 
diff --git a/net/core/net-traces.c b/net/core/net-traces.c
index f1e982c..7eee0b7 100644
--- a/net/core/net-traces.c
+++ b/net/core/net-traces.c
@@ -22,10 +22,12 @@
 
 #include <asm/unaligned.h>
 #include <asm/bitops.h>
+#include <linux/tracepoint.h>
 
 #define CREATE_TRACE_POINTS
 #include <trace/events/skb.h>
-#include <trace/events/napi.h>
+
+DEFINE_TRACE(napi_poll);
 
 EXPORT_TRACEPOINT_SYMBOL_GPL(kfree_skb);
 
-- 
1.6.1.2


^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH 2/2] trace_events: fix the include file dependencies
  2009-08-25  6:04 [PATCH 1/2] trace_evetns: fix napi's tracepoint Xiao Guangrong
@ 2009-08-25  6:06 ` Xiao Guangrong
  2009-08-25 13:30   ` Frederic Weisbecker
                     ` (2 more replies)
  2009-08-25  6:45 ` [PATCH 1/2] trace_evetns: fix napi's tracepoint Xiao Guangrong
  2009-08-25  6:49 ` [PATCH 1/2] trace_events: " Xiao Guangrong
  2 siblings, 3 replies; 14+ messages in thread
From: Xiao Guangrong @ 2009-08-25  6:06 UTC (permalink / raw)
  To: Ingo Molnar
  Cc: Steven Rostedt, Frederic Weisbecker, Neil Horman, Wei Yongjun,
	LKML

The TRACE_EVENT depend on the include/linux/tracepoint.h first
and include/trace/ftrace.h later, if we include the ftrace.h early,
It'll occur building error, like blow:

Both define TRACE_EVENT in trace_a.h and trace_b.h, if we include
those in .c file, like this:

#define CREATE_TRACE_POINTS
include <trace/events/trace_a.h>
include <trace/events/trace_b.h>

There are can't work,  because the TRACE_EVENT has re-defined by
the previous .h file

Reported-by: Wei Yongjun <yjwei@cn.fujitsu.com>
Signed-off-by: Xiao Guangrong <xiaoguangrong@cn.fujitsu.com>
---
 include/linux/tracepoint.h   |    3 +--
 include/trace/define_trace.h |    1 +
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/include/linux/tracepoint.h b/include/linux/tracepoint.h
index 5984ed0..8170985 100644
--- a/include/linux/tracepoint.h
+++ b/include/linux/tracepoint.h
@@ -180,6 +180,7 @@ static inline void tracepoint_synchronize_unregister(void)
 }
 
 #define PARAMS(args...) args
+#endif
 
 #ifndef TRACE_EVENT
 /*
@@ -287,5 +288,3 @@ static inline void tracepoint_synchronize_unregister(void)
 #define TRACE_EVENT(name, proto, args, struct, assign, print)	\
 	DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
 #endif
-
-#endif
diff --git a/include/trace/define_trace.h b/include/trace/define_trace.h
index 76e93bf..202cecd 100644
--- a/include/trace/define_trace.h
+++ b/include/trace/define_trace.h
@@ -52,6 +52,7 @@
 #include <trace/ftrace.h>
 #endif
 
+#undef TRACE_EVENT
 #undef TRACE_HEADER_MULTI_READ
 
 /* Only undef what we defined in this file */
-- 
1.6.1.2



^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: [PATCH 1/2] trace_evetns: fix napi's tracepoint
  2009-08-25  6:04 [PATCH 1/2] trace_evetns: fix napi's tracepoint Xiao Guangrong
  2009-08-25  6:06 ` [PATCH 2/2] trace_events: fix the include file dependencies Xiao Guangrong
@ 2009-08-25  6:45 ` Xiao Guangrong
  2009-08-25  6:49 ` [PATCH 1/2] trace_events: " Xiao Guangrong
  2 siblings, 0 replies; 14+ messages in thread
From: Xiao Guangrong @ 2009-08-25  6:45 UTC (permalink / raw)
  To: Ingo Molnar
  Cc: Steven Rostedt, Frederic Weisbecker, Neil Horman, Wei Yongjun,
	LKML



Xiao Guangrong wrote:
> Currently, the napi's tracepoint works will is depend on
> "DECLARE_TRACE" definiens in include/trace/define_trace.h,
> like below:
> 
> #include <trace/events/skb.h>    // include define_trace.h
> #include <trace/events/napi.h>
> 
> there have error, if we remove "#include <trace/events/skb.h>"
> or include napi.h in the front of include skb.h, It should
> depend on the definiens in include/linux/tracepoint.h and we
> can remove the "DECLARE_TRACE" definiens in
> include/trace/define_trace.h, because "TRACE_EVENT" not use it
> 
> Signed-off-by: Xiao Guangrong <xiaoguangrong@cn.fujitsu.com>

Sorry for forget to CC David Miller and netdev@vger.kernel.org, also
mistype the title: trace_evetns -> trace_events, please ignore this mail
and I'll resend it soon

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH 1/2] trace_events: fix napi's tracepoint
  2009-08-25  6:04 [PATCH 1/2] trace_evetns: fix napi's tracepoint Xiao Guangrong
  2009-08-25  6:06 ` [PATCH 2/2] trace_events: fix the include file dependencies Xiao Guangrong
  2009-08-25  6:45 ` [PATCH 1/2] trace_evetns: fix napi's tracepoint Xiao Guangrong
@ 2009-08-25  6:49 ` Xiao Guangrong
  2009-08-25  7:58   ` Ingo Molnar
  2009-08-26  5:20   ` Xiao Guangrong
  2 siblings, 2 replies; 14+ messages in thread
From: Xiao Guangrong @ 2009-08-25  6:49 UTC (permalink / raw)
  To: Ingo Molnar
  Cc: Steven Rostedt, Frederic Weisbecker, Neil Horman, Wei Yongjun,
	David Miller, Netdev, LKML

Currently, the napi's tracepoint works will is depend on
"DECLARE_TRACE" definiens in include/trace/define_trace.h,
like below:

#include <trace/events/skb.h>    // include define_trace.h
#include <trace/events/napi.h>

there have error, if we remove "#include <trace/events/skb.h>"
or include napi.h in the front of include skb.h, It should
depend on the definiens in include/linux/tracepoint.h and we
can remove the "DECLARE_TRACE" definiens in
include/trace/define_trace.h, because "TRACE_EVENT" not use it

Signed-off-by: Xiao Guangrong <xiaoguangrong@cn.fujitsu.com>
---
 include/trace/define_trace.h |    4 ----
 net/core/net-traces.c        |    4 +++-
 2 files changed, 3 insertions(+), 5 deletions(-)

diff --git a/include/trace/define_trace.h b/include/trace/define_trace.h
index f7a7ae1..76e93bf 100644
--- a/include/trace/define_trace.h
+++ b/include/trace/define_trace.h
@@ -26,10 +26,6 @@
 #define TRACE_EVENT(name, proto, args, tstruct, assign, print)	\
 	DEFINE_TRACE(name)
 
-#undef DECLARE_TRACE
-#define DECLARE_TRACE(name, proto, args)	\
-	DEFINE_TRACE(name)
-
 #undef TRACE_INCLUDE
 #undef __TRACE_INCLUDE
 
diff --git a/net/core/net-traces.c b/net/core/net-traces.c
index f1e982c..42bda72 100644
--- a/net/core/net-traces.c
+++ b/net/core/net-traces.c
@@ -19,13 +19,15 @@
 #include <linux/workqueue.h>
 #include <linux/netlink.h>
 #include <linux/net_dropmon.h>
+#include <linux/tracepoint.h>
 
 #include <asm/unaligned.h>
 #include <asm/bitops.h>
 
 #define CREATE_TRACE_POINTS
 #include <trace/events/skb.h>
-#include <trace/events/napi.h>
+
+DEFINE_TRACE(napi_poll);
 
 EXPORT_TRACEPOINT_SYMBOL_GPL(kfree_skb);
 
-- 
1.6.1.2



^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: [PATCH 1/2] trace_events: fix napi's tracepoint
  2009-08-25  6:49 ` [PATCH 1/2] trace_events: " Xiao Guangrong
@ 2009-08-25  7:58   ` Ingo Molnar
  2009-08-25 10:57     ` Neil Horman
  2009-08-26  5:20   ` Xiao Guangrong
  1 sibling, 1 reply; 14+ messages in thread
From: Ingo Molnar @ 2009-08-25  7:58 UTC (permalink / raw)
  To: Xiao Guangrong, Neil Horman
  Cc: Steven Rostedt, Frederic Weisbecker, Neil Horman, Wei Yongjun,
	David Miller, Netdev, LKML


* Xiao Guangrong <xiaoguangrong@cn.fujitsu.com> wrote:

> Currently, the napi's tracepoint works will is depend on
> "DECLARE_TRACE" definiens in include/trace/define_trace.h,
> like below:
> 
> #include <trace/events/skb.h>    // include define_trace.h
> #include <trace/events/napi.h>
> 
> there have error, if we remove "#include <trace/events/skb.h>"
> or include napi.h in the front of include skb.h, It should
> depend on the definiens in include/linux/tracepoint.h and we
> can remove the "DECLARE_TRACE" definiens in
> include/trace/define_trace.h, because "TRACE_EVENT" not use it
> 
> Signed-off-by: Xiao Guangrong <xiaoguangrong@cn.fujitsu.com>
> ---
>  include/trace/define_trace.h |    4 ----
>  net/core/net-traces.c        |    4 +++-
>  2 files changed, 3 insertions(+), 5 deletions(-)

This will collide with tracing bits in the networking tree. The 
skb-tracing plugin there should be turned into proper TRACE_EVENT() 
tracepoints.

Neil was away for some time but i think soon we should see some 
movement here.

	Ingo

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 1/2] trace_events: fix napi's tracepoint
  2009-08-25  7:58   ` Ingo Molnar
@ 2009-08-25 10:57     ` Neil Horman
  2009-08-26  0:49       ` Xiao Guangrong
  0 siblings, 1 reply; 14+ messages in thread
From: Neil Horman @ 2009-08-25 10:57 UTC (permalink / raw)
  To: Ingo Molnar
  Cc: Xiao Guangrong, Steven Rostedt, Frederic Weisbecker, Wei Yongjun,
	David Miller, Netdev, LKML

On Tue, Aug 25, 2009 at 09:58:16AM +0200, Ingo Molnar wrote:
> 
> * Xiao Guangrong <xiaoguangrong@cn.fujitsu.com> wrote:
> 
> > Currently, the napi's tracepoint works will is depend on
> > "DECLARE_TRACE" definiens in include/trace/define_trace.h,
> > like below:
> > 
> > #include <trace/events/skb.h>    // include define_trace.h
> > #include <trace/events/napi.h>
> > 
> > there have error, if we remove "#include <trace/events/skb.h>"
> > or include napi.h in the front of include skb.h, It should
> > depend on the definiens in include/linux/tracepoint.h and we
> > can remove the "DECLARE_TRACE" definiens in
> > include/trace/define_trace.h, because "TRACE_EVENT" not use it
> > 
> > Signed-off-by: Xiao Guangrong <xiaoguangrong@cn.fujitsu.com>
> > ---
> >  include/trace/define_trace.h |    4 ----
> >  net/core/net-traces.c        |    4 +++-
> >  2 files changed, 3 insertions(+), 5 deletions(-)
> 
> This will collide with tracing bits in the networking tree. The 
> skb-tracing plugin there should be turned into proper TRACE_EVENT() 
> tracepoints.
> 
> Neil was away for some time but i think soon we should see some 
> movement here.
> 
> 	Ingo
> 

Thank you Ingo, yes, I'm back from the beach now and will look at this shortly.
I concur, we should just convert the napi_poll tracepoint to be defined via the
TRACE_EVENT macro, same as the kfree_skb tracepoint.  Xaio would you like to
take care of that, or shall I?

Best
Neil


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 2/2] trace_events: fix the include file dependencies
  2009-08-25  6:06 ` [PATCH 2/2] trace_events: fix the include file dependencies Xiao Guangrong
@ 2009-08-25 13:30   ` Frederic Weisbecker
  2009-08-25 22:59     ` Steven Rostedt
  2009-08-25 21:35   ` Frederic Weisbecker
  2009-08-26  7:23   ` [tip:tracing/core] tracing/events: " tip-bot for Xiao Guangrong
  2 siblings, 1 reply; 14+ messages in thread
From: Frederic Weisbecker @ 2009-08-25 13:30 UTC (permalink / raw)
  To: Xiao Guangrong
  Cc: Ingo Molnar, Steven Rostedt, Neil Horman, Wei Yongjun, LKML

On Tue, Aug 25, 2009 at 02:06:22PM +0800, Xiao Guangrong wrote:
> The TRACE_EVENT depend on the include/linux/tracepoint.h first
> and include/trace/ftrace.h later, if we include the ftrace.h early,
> It'll occur building error, like blow:
> 
> Both define TRACE_EVENT in trace_a.h and trace_b.h, if we include
> those in .c file, like this:
> 
> #define CREATE_TRACE_POINTS
> include <trace/events/trace_a.h>
> include <trace/events/trace_b.h>
> 
> There are can't work,  because the TRACE_EVENT has re-defined by
> the previous .h file
> 
> Reported-by: Wei Yongjun <yjwei@cn.fujitsu.com>
> Signed-off-by: Xiao Guangrong <xiaoguangrong@cn.fujitsu.com>
> ---
>  include/linux/tracepoint.h   |    3 +--
>  include/trace/define_trace.h |    1 +
>  2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/include/linux/tracepoint.h b/include/linux/tracepoint.h
> index 5984ed0..8170985 100644
> --- a/include/linux/tracepoint.h
> +++ b/include/linux/tracepoint.h
> @@ -180,6 +180,7 @@ static inline void tracepoint_synchronize_unregister(void)
>  }
>  
>  #define PARAMS(args...) args
> +#endif


Please add a comment to explain what your endifs are closing, that helps
for reviews. Especially while walking on such complicated header files,
it's a crutch.

I guess this one closes _LINUX_TRACEPOINT_H, right?


>  
>  #ifndef TRACE_EVENT
>  /*
> @@ -287,5 +288,3 @@ static inline void tracepoint_synchronize_unregister(void)
>  #define TRACE_EVENT(name, proto, args, struct, assign, print)	\
>  	DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
>  #endif
> -
> -#endif
> diff --git a/include/trace/define_trace.h b/include/trace/define_trace.h
> index 76e93bf..202cecd 100644
> --- a/include/trace/define_trace.h
> +++ b/include/trace/define_trace.h
> @@ -52,6 +52,7 @@
>  #include <trace/ftrace.h>
>  #endif
>  
> +#undef TRACE_EVENT
>  #undef TRACE_HEADER_MULTI_READ
>  
>  /* Only undef what we defined in this file */


Well, hopefully we are not missing something subtle, but
yeah that seems to solve the problem, for both CONFIG_EVENT_TRACING
and !CONFIG_EVENT_TRACING cases.
And that seems to also fit well whenever CREATE_TRACE_POINTS is
defined or not.

Other than the missing comment:

Acked-by: Frederic Weisbecker <fweisbec@gmail.com>

Thanks.


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 2/2] trace_events: fix the include file dependencies
  2009-08-25  6:06 ` [PATCH 2/2] trace_events: fix the include file dependencies Xiao Guangrong
  2009-08-25 13:30   ` Frederic Weisbecker
@ 2009-08-25 21:35   ` Frederic Weisbecker
  2009-08-26  7:23   ` [tip:tracing/core] tracing/events: " tip-bot for Xiao Guangrong
  2 siblings, 0 replies; 14+ messages in thread
From: Frederic Weisbecker @ 2009-08-25 21:35 UTC (permalink / raw)
  To: Xiao Guangrong
  Cc: Ingo Molnar, Steven Rostedt, Neil Horman, Wei Yongjun, LKML

On Tue, Aug 25, 2009 at 02:06:22PM +0800, Xiao Guangrong wrote:
> The TRACE_EVENT depend on the include/linux/tracepoint.h first
> and include/trace/ftrace.h later, if we include the ftrace.h early,
> It'll occur building error, like blow:
> 
> Both define TRACE_EVENT in trace_a.h and trace_b.h, if we include
> those in .c file, like this:
> 
> #define CREATE_TRACE_POINTS
> include <trace/events/trace_a.h>
> include <trace/events/trace_b.h>
> 
> There are can't work,  because the TRACE_EVENT has re-defined by
> the previous .h file
> 
> Reported-by: Wei Yongjun <yjwei@cn.fujitsu.com>
> Signed-off-by: Xiao Guangrong <xiaoguangrong@cn.fujitsu.com>



I'll queue it for .32 and handle the missing comment, thanks!


> ---
>  include/linux/tracepoint.h   |    3 +--
>  include/trace/define_trace.h |    1 +
>  2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/include/linux/tracepoint.h b/include/linux/tracepoint.h
> index 5984ed0..8170985 100644
> --- a/include/linux/tracepoint.h
> +++ b/include/linux/tracepoint.h
> @@ -180,6 +180,7 @@ static inline void tracepoint_synchronize_unregister(void)
>  }
>  
>  #define PARAMS(args...) args
> +#endif
>  
>  #ifndef TRACE_EVENT
>  /*
> @@ -287,5 +288,3 @@ static inline void tracepoint_synchronize_unregister(void)
>  #define TRACE_EVENT(name, proto, args, struct, assign, print)	\
>  	DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
>  #endif
> -
> -#endif
> diff --git a/include/trace/define_trace.h b/include/trace/define_trace.h
> index 76e93bf..202cecd 100644
> --- a/include/trace/define_trace.h
> +++ b/include/trace/define_trace.h
> @@ -52,6 +52,7 @@
>  #include <trace/ftrace.h>
>  #endif
>  
> +#undef TRACE_EVENT
>  #undef TRACE_HEADER_MULTI_READ
>  
>  /* Only undef what we defined in this file */
> -- 
> 1.6.1.2
> 
> 


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 2/2] trace_events: fix the include file dependencies
  2009-08-25 13:30   ` Frederic Weisbecker
@ 2009-08-25 22:59     ` Steven Rostedt
  0 siblings, 0 replies; 14+ messages in thread
From: Steven Rostedt @ 2009-08-25 22:59 UTC (permalink / raw)
  To: Frederic Weisbecker
  Cc: Xiao Guangrong, Ingo Molnar, Neil Horman, Wei Yongjun, LKML


On Tue, 25 Aug 2009, Frederic Weisbecker wrote:

> On Tue, Aug 25, 2009 at 02:06:22PM +0800, Xiao Guangrong wrote:
> > The TRACE_EVENT depend on the include/linux/tracepoint.h first
> > and include/trace/ftrace.h later, if we include the ftrace.h early,
> > It'll occur building error, like blow:
> > 
> > Both define TRACE_EVENT in trace_a.h and trace_b.h, if we include
> > those in .c file, like this:
> > 
> > #define CREATE_TRACE_POINTS
> > include <trace/events/trace_a.h>
> > include <trace/events/trace_b.h>
> > 
> > There are can't work,  because the TRACE_EVENT has re-defined by
> > the previous .h file
> > 
> > Reported-by: Wei Yongjun <yjwei@cn.fujitsu.com>
> > Signed-off-by: Xiao Guangrong <xiaoguangrong@cn.fujitsu.com>
> > ---
> >  include/linux/tracepoint.h   |    3 +--
> >  include/trace/define_trace.h |    1 +
> >  2 files changed, 2 insertions(+), 2 deletions(-)
> > 
> > diff --git a/include/linux/tracepoint.h b/include/linux/tracepoint.h
> > index 5984ed0..8170985 100644
> > --- a/include/linux/tracepoint.h
> > +++ b/include/linux/tracepoint.h
> > @@ -180,6 +180,7 @@ static inline void tracepoint_synchronize_unregister(void)
> >  }
> >  
> >  #define PARAMS(args...) args
> > +#endif
> 
> 
> Please add a comment to explain what your endifs are closing, that helps
> for reviews. Especially while walking on such complicated header files,
> it's a crutch.
> 
> I guess this one closes _LINUX_TRACEPOINT_H, right?

This needs a lot more than a simple /* _LINUX_TRACEPOINT_H */ comment. It 
needs a nice explanation to why this is happening. This is a global header 
(located in include/linux), when it does something out of the norm, it 
needs a nice comment to explain why.

I'll pull this in and add a separate commit that adds the comment.

Thanks!

-- Steve


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 1/2] trace_events: fix napi's tracepoint
  2009-08-25 10:57     ` Neil Horman
@ 2009-08-26  0:49       ` Xiao Guangrong
  0 siblings, 0 replies; 14+ messages in thread
From: Xiao Guangrong @ 2009-08-26  0:49 UTC (permalink / raw)
  To: Neil Horman
  Cc: Ingo Molnar, Steven Rostedt, Frederic Weisbecker, Wei Yongjun,
	David Miller, Netdev, LKML



Neil Horman wrote:
> On Tue, Aug 25, 2009 at 09:58:16AM +0200, Ingo Molnar wrote:
>> * Xiao Guangrong <xiaoguangrong@cn.fujitsu.com> wrote:
>>
>> This will collide with tracing bits in the networking tree. The 
>> skb-tracing plugin there should be turned into proper TRACE_EVENT() 
>> tracepoints.
>>
>> Neil was away for some time but i think soon we should see some 
>> movement here.
>>
>> 	Ingo
>>
> 
> Thank you Ingo, yes, I'm back from the beach now and will look at this shortly.
> I concur, we should just convert the napi_poll tracepoint to be defined via the
> TRACE_EVENT macro, same as the kfree_skb tracepoint.  Xaio would you like to
> take care of that, or shall I?
>

Hi Neil,

I'm glad to do it.

Actually, we should fix the include file dependencies first
(the second patch in this patchset), else we can't include two
TRACE_EVENT head files in net-traces.c

Steve will pull this patchset, so, I'll convert it after this
patchset merged.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 1/2] trace_events: fix napi's tracepoint
  2009-08-25  6:49 ` [PATCH 1/2] trace_events: " Xiao Guangrong
  2009-08-25  7:58   ` Ingo Molnar
@ 2009-08-26  5:20   ` Xiao Guangrong
  2009-08-26  5:40     ` Xiao Guangrong
  1 sibling, 1 reply; 14+ messages in thread
From: Xiao Guangrong @ 2009-08-26  5:20 UTC (permalink / raw)
  To: Ingo Molnar
  Cc: Steven Rostedt, Frederic Weisbecker, Neil Horman, Wei Yongjun,
	David Miller, Netdev, LKML



Xiao Guangrong wrote:
> Currently, the napi's tracepoint works will is depend on
> "DECLARE_TRACE" definiens in include/trace/define_trace.h,
> like below:
> 
> #include <trace/events/skb.h>    // include define_trace.h
> #include <trace/events/napi.h>
> 
> there have error, if we remove "#include <trace/events/skb.h>"
> or include napi.h in the front of include skb.h, It should
> depend on the definiens in include/linux/tracepoint.h and we
> can remove the "DECLARE_TRACE" definiens in
> include/trace/define_trace.h, because "TRACE_EVENT" not use it
> 
> Signed-off-by: Xiao Guangrong <xiaoguangrong@cn.fujitsu.com>

Hi Steven,

I'm sorry, please pull this patch too, because 
"[PATCH 7/8] tracing/events: fix the include file dependencies" 
is based on this patch, else will occur building error.

Thanks,
Xiao

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 1/2] trace_events: fix napi's tracepoint
  2009-08-26  5:20   ` Xiao Guangrong
@ 2009-08-26  5:40     ` Xiao Guangrong
  2009-08-26 14:01       ` Steven Rostedt
  0 siblings, 1 reply; 14+ messages in thread
From: Xiao Guangrong @ 2009-08-26  5:40 UTC (permalink / raw)
  To: Ingo Molnar
  Cc: Steven Rostedt, Frederic Weisbecker, Neil Horman, Wei Yongjun,
	David Miller, Netdev, LKML



Xiao Guangrong wrote:
> 
> Xiao Guangrong wrote:
>> Currently, the napi's tracepoint works will is depend on
>> "DECLARE_TRACE" definiens in include/trace/define_trace.h,
>> like below:
>>
>> #include <trace/events/skb.h>    // include define_trace.h
>> #include <trace/events/napi.h>
>>
>> there have error, if we remove "#include <trace/events/skb.h>"
>> or include napi.h in the front of include skb.h, It should
>> depend on the definiens in include/linux/tracepoint.h and we
>> can remove the "DECLARE_TRACE" definiens in
>> include/trace/define_trace.h, because "TRACE_EVENT" not use it
>>
>> Signed-off-by: Xiao Guangrong <xiaoguangrong@cn.fujitsu.com>
> 
> Hi Steven,
> 
> I'm sorry, please pull this patch too, because 
> "[PATCH 7/8] tracing/events: fix the include file dependencies" 
> is based on this patch, else will occur building error.
> 

Sorry again, I say the wrong words, it not has building error, just
not complete fix the bug which I mention it in the changelog of
"[PATCH 7/8] tracing/events: fix the include file dependencies", that
is we can't include more TRACE_EVENT head file in .c file all the same,
like below:

Both define TRACE_EVENT in trace_a.h and trace_b.h, if we include
those in .c file, like this:

#define CREATE_TRACE_POINTS
include <trace/events/trace_a.h>  // re-define DECLARE_TRACE

include <trace/events/trace_b.h>  // use the DECLARE_TRACE definition
				  // that re-define by trace_a.h

Thanks,
Xiao



^ permalink raw reply	[flat|nested] 14+ messages in thread

* [tip:tracing/core] tracing/events: fix the include file dependencies
  2009-08-25  6:06 ` [PATCH 2/2] trace_events: fix the include file dependencies Xiao Guangrong
  2009-08-25 13:30   ` Frederic Weisbecker
  2009-08-25 21:35   ` Frederic Weisbecker
@ 2009-08-26  7:23   ` tip-bot for Xiao Guangrong
  2 siblings, 0 replies; 14+ messages in thread
From: tip-bot for Xiao Guangrong @ 2009-08-26  7:23 UTC (permalink / raw)
  To: linux-tip-commits
  Cc: linux-kernel, hpa, mingo, rostedt, yjwei, xiaoguangrong, tglx

Commit-ID:  5ac35daa9343936038a3c9c4f4d6d3fe6a2a7bd8
Gitweb:     http://git.kernel.org/tip/5ac35daa9343936038a3c9c4f4d6d3fe6a2a7bd8
Author:     Xiao Guangrong <xiaoguangrong@cn.fujitsu.com>
AuthorDate: Tue, 25 Aug 2009 14:06:22 +0800
Committer:  Steven Rostedt <rostedt@goodmis.org>
CommitDate: Wed, 26 Aug 2009 00:32:09 -0400

tracing/events: fix the include file dependencies

The TRACE_EVENT depends on the include/linux/tracepoint.h first
and include/trace/ftrace.h later, if we include the ftrace.h early,
a building error will occur.

Both define TRACE_EVENT in trace_a.h and trace_b.h, if we include
those in .c file, like this:

#define CREATE_TRACE_POINTS
include <trace/events/trace_a.h>
include <trace/events/trace_b.h>

The above will not work, because the TRACE_EVENT was re-defined by
the previous .h file.

Reported-by: Wei Yongjun <yjwei@cn.fujitsu.com>
Signed-off-by: Xiao Guangrong <xiaoguangrong@cn.fujitsu.com>
LKML-Reference: <4A937F5E.3020802@cn.fujitsu.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>


---
 include/linux/tracepoint.h   |    3 +--
 include/trace/define_trace.h |    1 +
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/include/linux/tracepoint.h b/include/linux/tracepoint.h
index 5984ed0..8170985 100644
--- a/include/linux/tracepoint.h
+++ b/include/linux/tracepoint.h
@@ -180,6 +180,7 @@ static inline void tracepoint_synchronize_unregister(void)
 }
 
 #define PARAMS(args...) args
+#endif
 
 #ifndef TRACE_EVENT
 /*
@@ -287,5 +288,3 @@ static inline void tracepoint_synchronize_unregister(void)
 #define TRACE_EVENT(name, proto, args, struct, assign, print)	\
 	DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
 #endif
-
-#endif
diff --git a/include/trace/define_trace.h b/include/trace/define_trace.h
index f7a7ae1..cd150b9 100644
--- a/include/trace/define_trace.h
+++ b/include/trace/define_trace.h
@@ -56,6 +56,7 @@
 #include <trace/ftrace.h>
 #endif
 
+#undef TRACE_EVENT
 #undef TRACE_HEADER_MULTI_READ
 
 /* Only undef what we defined in this file */

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: [PATCH 1/2] trace_events: fix napi's tracepoint
  2009-08-26  5:40     ` Xiao Guangrong
@ 2009-08-26 14:01       ` Steven Rostedt
  0 siblings, 0 replies; 14+ messages in thread
From: Steven Rostedt @ 2009-08-26 14:01 UTC (permalink / raw)
  To: Xiao Guangrong
  Cc: Ingo Molnar, Frederic Weisbecker, Neil Horman, Wei Yongjun,
	David Miller, Netdev, LKML


On Wed, 26 Aug 2009, Xiao Guangrong wrote:

> 
> 
> Xiao Guangrong wrote:
> > 
> > Xiao Guangrong wrote:
> >> Currently, the napi's tracepoint works will is depend on
> >> "DECLARE_TRACE" definiens in include/trace/define_trace.h,
> >> like below:
> >>
> >> #include <trace/events/skb.h>    // include define_trace.h
> >> #include <trace/events/napi.h>
> >>
> >> there have error, if we remove "#include <trace/events/skb.h>"
> >> or include napi.h in the front of include skb.h, It should
> >> depend on the definiens in include/linux/tracepoint.h and we
> >> can remove the "DECLARE_TRACE" definiens in
> >> include/trace/define_trace.h, because "TRACE_EVENT" not use it
> >>
> >> Signed-off-by: Xiao Guangrong <xiaoguangrong@cn.fujitsu.com>
> > 
> > Hi Steven,
> > 
> > I'm sorry, please pull this patch too, because 
> > "[PATCH 7/8] tracing/events: fix the include file dependencies" 
> > is based on this patch, else will occur building error.
> > 
> 
> Sorry again, I say the wrong words, it not has building error, just
> not complete fix the bug which I mention it in the changelog of
> "[PATCH 7/8] tracing/events: fix the include file dependencies", that
> is we can't include more TRACE_EVENT head file in .c file all the same,
> like below:
> 
> Both define TRACE_EVENT in trace_a.h and trace_b.h, if we include
> those in .c file, like this:
> 
> #define CREATE_TRACE_POINTS
> include <trace/events/trace_a.h>  // re-define DECLARE_TRACE
> 
> include <trace/events/trace_b.h>  // use the DECLARE_TRACE definition
> 				  // that re-define by trace_a.h

Hi Xiao,

I pushed out the "fix the include file dependencies" patch since that was 
a bug fix in its own right. I held off the NAPI patch because it looked 
like it needed rework and only depended on the include dependencies fix. 

Could you update this code to do as Neil and Ingo has mentioned.

Thanks,

-- Steve


^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2009-08-26 14:01 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-08-25  6:04 [PATCH 1/2] trace_evetns: fix napi's tracepoint Xiao Guangrong
2009-08-25  6:06 ` [PATCH 2/2] trace_events: fix the include file dependencies Xiao Guangrong
2009-08-25 13:30   ` Frederic Weisbecker
2009-08-25 22:59     ` Steven Rostedt
2009-08-25 21:35   ` Frederic Weisbecker
2009-08-26  7:23   ` [tip:tracing/core] tracing/events: " tip-bot for Xiao Guangrong
2009-08-25  6:45 ` [PATCH 1/2] trace_evetns: fix napi's tracepoint Xiao Guangrong
2009-08-25  6:49 ` [PATCH 1/2] trace_events: " Xiao Guangrong
2009-08-25  7:58   ` Ingo Molnar
2009-08-25 10:57     ` Neil Horman
2009-08-26  0:49       ` Xiao Guangrong
2009-08-26  5:20   ` Xiao Guangrong
2009-08-26  5:40     ` Xiao Guangrong
2009-08-26 14:01       ` Steven Rostedt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox