Re: linux-next: Tree for Jan 7 (rcutorture)
On Mon, Jan 14, 2013 at 10:08:41PM -0500, Steven Rostedt wrote: > On Mon, 2013-01-14 at 11:49 -0800, Paul E. McKenney wrote: > > > diff --git a/kernel/rcu.h b/kernel/rcu.h > > index 7f8e759..b5d30c3 100644 > > --- a/kernel/rcu.h > > +++ b/kernel/rcu.h > > @@ -24,6 +24,7 @@ > > #define __LINUX_RCU_H > > > > #ifdef CONFIG_RCU_TRACE > > +#include > > #define RCU_TRACE(stmt) stmt > > #else /* #ifdef CONFIG_RCU_TRACE */ > > #define RCU_TRACE(stmt) > > @@ -118,4 +119,13 @@ int rcu_jiffies_till_stall_check(void); > > > > #endif /* #ifdef CONFIG_RCU_STALL_COMMON */ > > > > +static inline u64 notrace rcu_trace_clock_local(void) > > "inline" now implies notrace. That is, we define inline to include > notrace in the headers. The 'notrace' now is redundant. Cool!!! I have removed the "notrace", having just barely resisted the urge to add two more instances of "notrace", just for good measure. ;-) Thanx, Paul > -- Steve > > > +{ > > +#ifdef CONFIG_RCU_TRACE > > + return trace_clock_local(); > > +#else /* #ifdef CONFIG_RCU_TRACE */ > > + return 0; > > +#endif /* #else #ifdef CONFIG_RCU_TRACE */ > > +} > > + > > #endif /* __LINUX_RCU_H */ > > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: linux-next: Tree for Jan 7 (rcutorture)
On Mon, 2013-01-14 at 11:49 -0800, Paul E. McKenney wrote: > diff --git a/kernel/rcu.h b/kernel/rcu.h > index 7f8e759..b5d30c3 100644 > --- a/kernel/rcu.h > +++ b/kernel/rcu.h > @@ -24,6 +24,7 @@ > #define __LINUX_RCU_H > > #ifdef CONFIG_RCU_TRACE > +#include > #define RCU_TRACE(stmt) stmt > #else /* #ifdef CONFIG_RCU_TRACE */ > #define RCU_TRACE(stmt) > @@ -118,4 +119,13 @@ int rcu_jiffies_till_stall_check(void); > > #endif /* #ifdef CONFIG_RCU_STALL_COMMON */ > > +static inline u64 notrace rcu_trace_clock_local(void) "inline" now implies notrace. That is, we define inline to include notrace in the headers. The 'notrace' now is redundant. -- Steve > +{ > +#ifdef CONFIG_RCU_TRACE > + return trace_clock_local(); > +#else /* #ifdef CONFIG_RCU_TRACE */ > + return 0; > +#endif /* #else #ifdef CONFIG_RCU_TRACE */ > +} > + > #endif /* __LINUX_RCU_H */ -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: linux-next: Tree for Jan 7 (rcutorture)
On Mon, Jan 14, 2013 at 10:49:05AM -0800, Randy Dunlap wrote: > On 01/14/13 09:32, Paul E. McKenney wrote: > > On Mon, Jan 14, 2013 at 08:45:06AM -0800, Randy Dunlap wrote: > >> On 01/07/13 19:53, Paul E. McKenney wrote: > >>> On Mon, Jan 07, 2013 at 07:36:19PM -0500, Steven Rostedt wrote: > On Mon, 2013-01-07 at 18:12 -0500, Steven Rostedt wrote: > > On Tue, 2013-01-08 at 09:59 +1100, Stephen Rothwell wrote: > >> Hi Paul, > >> > >> On Mon, 7 Jan 2013 14:16:27 -0800 "Paul E. McKenney" > >> wrote: > >>> > >>> On Mon, Jan 07, 2013 at 11:42:36AM -0800, Randy Dunlap wrote: > > on i386 or x86_64: > > ERROR: "trace_clock_local" [kernel/rcutorture.ko] undefined! > >>> > >>> Hello, Randy, > >>> > >>> Did your build include the following, also pushed to -next in that > >>> same > >>> batch from -rcu? Including Steven Rostedt on CC for his take. > >> > >> That commit was certainly in next-20130107. > > > > Could be bad config dependencies. > > Paul, > > You need to also select TRACE_CLOCK if you are going to use it. > >>> > >>> Thank you, Steve! > >>> > >>> Randy, does the following patch help? > >>> > >>> Thanx, Paul > >> > >> Hi Paul, > >> > >> This patch fixed the Jan. 7 linux-next build errors, but there is > >> still some similar problem with current linux-next (0114 and late > >> last week as well). > >> > >> ERROR: "trace_clock_local" [kernel/rcutorture.ko] undefined! > > > > Ah, my bad... > > > > Does the following (rough and untested) patch help? > > Yes, it helps, but there is still the same problem in > rcu_torture_reader() -- after that it builds OK. One of those days, I guess... Thank you for fixing it up. Please see below for a more civilized fix. Thanx, Paul diff --git a/kernel/rcu.h b/kernel/rcu.h index 7f8e759..b5d30c3 100644 --- a/kernel/rcu.h +++ b/kernel/rcu.h @@ -24,6 +24,7 @@ #define __LINUX_RCU_H #ifdef CONFIG_RCU_TRACE +#include #define RCU_TRACE(stmt) stmt #else /* #ifdef CONFIG_RCU_TRACE */ #define RCU_TRACE(stmt) @@ -118,4 +119,13 @@ int rcu_jiffies_till_stall_check(void); #endif /* #ifdef CONFIG_RCU_STALL_COMMON */ +static inline u64 notrace rcu_trace_clock_local(void) +{ +#ifdef CONFIG_RCU_TRACE + return trace_clock_local(); +#else /* #ifdef CONFIG_RCU_TRACE */ + return 0; +#endif /* #else #ifdef CONFIG_RCU_TRACE */ +} + #endif /* __LINUX_RCU_H */ diff --git a/kernel/rcutorture.c b/kernel/rcutorture.c index cd4c35d..f28f501 100644 --- a/kernel/rcutorture.c +++ b/kernel/rcutorture.c @@ -46,8 +46,9 @@ #include #include #include -#include #include +#include +#include "rcu.h" MODULE_LICENSE("GPL"); MODULE_AUTHOR("Paul E. McKenney and Josh Triplett "); @@ -1051,7 +1052,7 @@ static void rcu_torture_timer(unsigned long unused) idx = cur_ops->readlock(); completed = cur_ops->completed(); - ts = trace_clock_local(); + ts = rcu_trace_clock_local(); p = rcu_dereference_check(rcu_torture_current, rcu_read_lock_bh_held() || rcu_read_lock_sched_held() || @@ -1122,7 +1123,7 @@ rcu_torture_reader(void *arg) } idx = cur_ops->readlock(); completed = cur_ops->completed(); - ts = trace_clock_local(); + ts = rcu_trace_clock_local(); p = rcu_dereference_check(rcu_torture_current, rcu_read_lock_bh_held() || rcu_read_lock_sched_held() || -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: linux-next: Tree for Jan 7 (rcutorture)
On 01/14/13 09:32, Paul E. McKenney wrote: > On Mon, Jan 14, 2013 at 08:45:06AM -0800, Randy Dunlap wrote: >> On 01/07/13 19:53, Paul E. McKenney wrote: >>> On Mon, Jan 07, 2013 at 07:36:19PM -0500, Steven Rostedt wrote: On Mon, 2013-01-07 at 18:12 -0500, Steven Rostedt wrote: > On Tue, 2013-01-08 at 09:59 +1100, Stephen Rothwell wrote: >> Hi Paul, >> >> On Mon, 7 Jan 2013 14:16:27 -0800 "Paul E. McKenney" >> wrote: >>> >>> On Mon, Jan 07, 2013 at 11:42:36AM -0800, Randy Dunlap wrote: on i386 or x86_64: ERROR: "trace_clock_local" [kernel/rcutorture.ko] undefined! >>> >>> Hello, Randy, >>> >>> Did your build include the following, also pushed to -next in that same >>> batch from -rcu? Including Steven Rostedt on CC for his take. >> >> That commit was certainly in next-20130107. > > Could be bad config dependencies. Paul, You need to also select TRACE_CLOCK if you are going to use it. >>> >>> Thank you, Steve! >>> >>> Randy, does the following patch help? >>> >>> Thanx, Paul >> >> Hi Paul, >> >> This patch fixed the Jan. 7 linux-next build errors, but there is >> still some similar problem with current linux-next (0114 and late >> last week as well). >> >> ERROR: "trace_clock_local" [kernel/rcutorture.ko] undefined! > > Ah, my bad... > > Does the following (rough and untested) patch help? Yes, it helps, but there is still the same problem in rcu_torture_reader() -- after that it builds OK. Thanks. > Thanx, Paul > > > > diff --git a/kernel/rcutorture.c b/kernel/rcutorture.c > index cd4c35d..36f0106 100644 > --- a/kernel/rcutorture.c > +++ b/kernel/rcutorture.c > @@ -1047,11 +1047,13 @@ static void rcu_torture_timer(unsigned long unused) > static DEFINE_SPINLOCK(rand_lock); > struct rcu_torture *p; > int pipe_count; > - unsigned long long ts; > + unsigned long long ts = 0; > > idx = cur_ops->readlock(); > completed = cur_ops->completed(); > +#ifdef CONFIG_RCU_TRACE > ts = trace_clock_local(); > +#endif /* #ifdef CONFIG_RCU_TRACE */ > p = rcu_dereference_check(rcu_torture_current, > rcu_read_lock_bh_held() || > rcu_read_lock_sched_held() || > > -- -- ~Randy -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: linux-next: Tree for Jan 7 (rcutorture)
On Mon, Jan 14, 2013 at 08:45:06AM -0800, Randy Dunlap wrote: > On 01/07/13 19:53, Paul E. McKenney wrote: > > On Mon, Jan 07, 2013 at 07:36:19PM -0500, Steven Rostedt wrote: > >> On Mon, 2013-01-07 at 18:12 -0500, Steven Rostedt wrote: > >>> On Tue, 2013-01-08 at 09:59 +1100, Stephen Rothwell wrote: > Hi Paul, > > On Mon, 7 Jan 2013 14:16:27 -0800 "Paul E. McKenney" > wrote: > > > > On Mon, Jan 07, 2013 at 11:42:36AM -0800, Randy Dunlap wrote: > >> > >> on i386 or x86_64: > >> > >> ERROR: "trace_clock_local" [kernel/rcutorture.ko] undefined! > > > > Hello, Randy, > > > > Did your build include the following, also pushed to -next in that same > > batch from -rcu? Including Steven Rostedt on CC for his take. > > That commit was certainly in next-20130107. > >>> > >>> Could be bad config dependencies. > >> > >> Paul, > >> > >> You need to also select TRACE_CLOCK if you are going to use it. > > > > Thank you, Steve! > > > > Randy, does the following patch help? > > > > Thanx, Paul > > Hi Paul, > > This patch fixed the Jan. 7 linux-next build errors, but there is > still some similar problem with current linux-next (0114 and late > last week as well). > > ERROR: "trace_clock_local" [kernel/rcutorture.ko] undefined! Ah, my bad... Does the following (rough and untested) patch help? Thanx, Paul diff --git a/kernel/rcutorture.c b/kernel/rcutorture.c index cd4c35d..36f0106 100644 --- a/kernel/rcutorture.c +++ b/kernel/rcutorture.c @@ -1047,11 +1047,13 @@ static void rcu_torture_timer(unsigned long unused) static DEFINE_SPINLOCK(rand_lock); struct rcu_torture *p; int pipe_count; - unsigned long long ts; + unsigned long long ts = 0; idx = cur_ops->readlock(); completed = cur_ops->completed(); +#ifdef CONFIG_RCU_TRACE ts = trace_clock_local(); +#endif /* #ifdef CONFIG_RCU_TRACE */ p = rcu_dereference_check(rcu_torture_current, rcu_read_lock_bh_held() || rcu_read_lock_sched_held() || -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: linux-next: Tree for Jan 7 (rcutorture)
On 01/07/13 19:53, Paul E. McKenney wrote: > On Mon, Jan 07, 2013 at 07:36:19PM -0500, Steven Rostedt wrote: >> On Mon, 2013-01-07 at 18:12 -0500, Steven Rostedt wrote: >>> On Tue, 2013-01-08 at 09:59 +1100, Stephen Rothwell wrote: Hi Paul, On Mon, 7 Jan 2013 14:16:27 -0800 "Paul E. McKenney" wrote: > > On Mon, Jan 07, 2013 at 11:42:36AM -0800, Randy Dunlap wrote: >> >> on i386 or x86_64: >> >> ERROR: "trace_clock_local" [kernel/rcutorture.ko] undefined! > > Hello, Randy, > > Did your build include the following, also pushed to -next in that same > batch from -rcu? Including Steven Rostedt on CC for his take. That commit was certainly in next-20130107. >>> >>> Could be bad config dependencies. >> >> Paul, >> >> You need to also select TRACE_CLOCK if you are going to use it. > > Thank you, Steve! > > Randy, does the following patch help? Yes, that's good. Acked-by: Randy Dunlap Thanks. > Thanx, Paul > > > > diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug > index ce75d3b..b0fe7bd 100644 > --- a/lib/Kconfig.debug > +++ b/lib/Kconfig.debug > @@ -1010,6 +1010,7 @@ config RCU_CPU_STALL_INFO > config RCU_TRACE > bool "Enable tracing for RCU" > depends on DEBUG_KERNEL > + select TRACE_CLOCK > help > This option provides tracing in RCU which presents stats > in debugfs for debugging RCU implementation. > > -- -- ~Randy -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: linux-next: Tree for Jan 7 (rcutorture)
On Mon, Jan 07, 2013 at 07:36:19PM -0500, Steven Rostedt wrote: > On Mon, 2013-01-07 at 18:12 -0500, Steven Rostedt wrote: > > On Tue, 2013-01-08 at 09:59 +1100, Stephen Rothwell wrote: > > > Hi Paul, > > > > > > On Mon, 7 Jan 2013 14:16:27 -0800 "Paul E. McKenney" > > > wrote: > > > > > > > > On Mon, Jan 07, 2013 at 11:42:36AM -0800, Randy Dunlap wrote: > > > > > > > > > > on i386 or x86_64: > > > > > > > > > > ERROR: "trace_clock_local" [kernel/rcutorture.ko] undefined! > > > > > > > > Hello, Randy, > > > > > > > > Did your build include the following, also pushed to -next in that same > > > > batch from -rcu? Including Steven Rostedt on CC for his take. > > > > > > That commit was certainly in next-20130107. > > > > Could be bad config dependencies. > > Paul, > > You need to also select TRACE_CLOCK if you are going to use it. Thank you, Steve! Randy, does the following patch help? Thanx, Paul diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug index ce75d3b..b0fe7bd 100644 --- a/lib/Kconfig.debug +++ b/lib/Kconfig.debug @@ -1010,6 +1010,7 @@ config RCU_CPU_STALL_INFO config RCU_TRACE bool "Enable tracing for RCU" depends on DEBUG_KERNEL + select TRACE_CLOCK help This option provides tracing in RCU which presents stats in debugfs for debugging RCU implementation. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: linux-next: Tree for Jan 7 (rcutorture)
On Mon, 2013-01-07 at 18:12 -0500, Steven Rostedt wrote: > On Tue, 2013-01-08 at 09:59 +1100, Stephen Rothwell wrote: > > Hi Paul, > > > > On Mon, 7 Jan 2013 14:16:27 -0800 "Paul E. McKenney" > > wrote: > > > > > > On Mon, Jan 07, 2013 at 11:42:36AM -0800, Randy Dunlap wrote: > > > > > > > > on i386 or x86_64: > > > > > > > > ERROR: "trace_clock_local" [kernel/rcutorture.ko] undefined! > > > > > > Hello, Randy, > > > > > > Did your build include the following, also pushed to -next in that same > > > batch from -rcu? Including Steven Rostedt on CC for his take. > > > > That commit was certainly in next-20130107. > > > > Could be bad config dependencies. > Paul, You need to also select TRACE_CLOCK if you are going to use it. -- Steve -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: linux-next: Tree for Jan 7 (rcutorture)
On Mon, Jan 07, 2013 at 06:31:41PM -0500, Steven Rostedt wrote: > On Tue, 2013-01-08 at 10:24 +1100, Stephen Rothwell wrote: > > > > Stephen, can you send me the config that gave you that error. > > > > It was Randy and the config was in the mail the Paul cc'd you on. > > > > Ah, I didn't read that far. I'm use to just cutting off Paul's emails > short anyway. He never trims them ;-) And if I had trimmed this one, I would have had to resend anyway. ;-) Thanx, Paul -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: linux-next: Tree for Jan 7 (rcutorture)
On Tue, 2013-01-08 at 10:24 +1100, Stephen Rothwell wrote: > > Stephen, can you send me the config that gave you that error. > > It was Randy and the config was in the mail the Paul cc'd you on. > Ah, I didn't read that far. I'm use to just cutting off Paul's emails short anyway. He never trims them ;-) -- Steve -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: linux-next: Tree for Jan 7 (rcutorture)
Hi Steve, On Mon, 07 Jan 2013 18:12:07 -0500 Steven Rostedt wrote: > > On Tue, 2013-01-08 at 09:59 +1100, Stephen Rothwell wrote: > > > > On Mon, 7 Jan 2013 14:16:27 -0800 "Paul E. McKenney" > > wrote: > > > > > > On Mon, Jan 07, 2013 at 11:42:36AM -0800, Randy Dunlap wrote: > > > > > > > > on i386 or x86_64: > > > > > > > > ERROR: "trace_clock_local" [kernel/rcutorture.ko] undefined! > > > > > > Hello, Randy, > > > > > > Did your build include the following, also pushed to -next in that same > > > batch from -rcu? Including Steven Rostedt on CC for his take. > > > > That commit was certainly in next-20130107. > > > > Could be bad config dependencies. > > Stephen, can you send me the config that gave you that error. It was Randy and the config was in the mail the Paul cc'd you on. -- Cheers, Stephen Rothwells...@canb.auug.org.au pgpBghO3P44Vi.pgp Description: PGP signature
Re: linux-next: Tree for Jan 7 (rcutorture)
On Tue, 2013-01-08 at 09:59 +1100, Stephen Rothwell wrote: > Hi Paul, > > On Mon, 7 Jan 2013 14:16:27 -0800 "Paul E. McKenney" > wrote: > > > > On Mon, Jan 07, 2013 at 11:42:36AM -0800, Randy Dunlap wrote: > > > > > > on i386 or x86_64: > > > > > > ERROR: "trace_clock_local" [kernel/rcutorture.ko] undefined! > > > > Hello, Randy, > > > > Did your build include the following, also pushed to -next in that same > > batch from -rcu? Including Steven Rostedt on CC for his take. > > That commit was certainly in next-20130107. > Could be bad config dependencies. Stephen, can you send me the config that gave you that error. Thanks, -- Steve -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: linux-next: Tree for Jan 7 (rcutorture)
Hi Paul, On Mon, 7 Jan 2013 14:16:27 -0800 "Paul E. McKenney" wrote: > > On Mon, Jan 07, 2013 at 11:42:36AM -0800, Randy Dunlap wrote: > > > > on i386 or x86_64: > > > > ERROR: "trace_clock_local" [kernel/rcutorture.ko] undefined! > > Hello, Randy, > > Did your build include the following, also pushed to -next in that same > batch from -rcu? Including Steven Rostedt on CC for his take. That commit was certainly in next-20130107. > > > tracing: Export trace_clock_local() > > The rcutorture tests need to be able to trace the time of the > beginning of an RCU read-side critical section, and thus need access > to trace_clock_local(). This commit therefore adds a the needed > EXPORT_SYMBOL_GPL(). > > Signed-off-by: Paul E. McKenney > Reviewed-by: Josh Triplett -- Cheers, Stephen Rothwells...@canb.auug.org.au pgpyspIZk3A7u.pgp Description: PGP signature