aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2013-02-06 06:43:04 -0500
committerIngo Molnar <mingo@kernel.org>2013-02-06 06:43:04 -0500
commit0351096eb0584ba927a00a37e18be7af135250c3 (patch)
treed8bf1d9fecc77ee75c92e1b58734add93d0aae71
parent9228b5f24325a3863a4819300b471278ff14b48f (diff)
parente4aa0da39b6a69f3442ebc33500c21176c5eb560 (diff)
Merge branch 'rcu/next' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu into core/rcu
Pull RCU build fixlet from Paul E. McKenney. Signed-off-by: Ingo Molnar <mingo@kernel.org>
-rw-r--r--kernel/rcutorture.c23
1 files changed, 16 insertions, 7 deletions
diff --git a/kernel/rcutorture.c b/kernel/rcutorture.c
index cd4c35d097a4..e1f3a8c96724 100644
--- a/kernel/rcutorture.c
+++ b/kernel/rcutorture.c
@@ -208,6 +208,20 @@ MODULE_PARM_DESC(rcutorture_runnable, "Start rcutorture at boot");
208#define rcu_can_boost() 0 208#define rcu_can_boost() 0
209#endif /* #else #if defined(CONFIG_RCU_BOOST) && !defined(CONFIG_HOTPLUG_CPU) */ 209#endif /* #else #if defined(CONFIG_RCU_BOOST) && !defined(CONFIG_HOTPLUG_CPU) */
210 210
211#ifdef CONFIG_RCU_TRACE
212static u64 notrace rcu_trace_clock_local(void)
213{
214 u64 ts = trace_clock_local();
215 unsigned long __maybe_unused ts_rem = do_div(ts, NSEC_PER_USEC);
216 return ts;
217}
218#else /* #ifdef CONFIG_RCU_TRACE */
219static u64 notrace rcu_trace_clock_local(void)
220{
221 return 0ULL;
222}
223#endif /* #else #ifdef CONFIG_RCU_TRACE */
224
211static unsigned long shutdown_time; /* jiffies to system shutdown. */ 225static unsigned long shutdown_time; /* jiffies to system shutdown. */
212static unsigned long boost_starttime; /* jiffies of next boost test start. */ 226static unsigned long boost_starttime; /* jiffies of next boost test start. */
213DEFINE_MUTEX(boost_mutex); /* protect setting boost_starttime */ 227DEFINE_MUTEX(boost_mutex); /* protect setting boost_starttime */
@@ -1051,7 +1065,7 @@ static void rcu_torture_timer(unsigned long unused)
1051 1065
1052 idx = cur_ops->readlock(); 1066 idx = cur_ops->readlock();
1053 completed = cur_ops->completed(); 1067 completed = cur_ops->completed();
1054 ts = trace_clock_local(); 1068 ts = rcu_trace_clock_local();
1055 p = rcu_dereference_check(rcu_torture_current, 1069 p = rcu_dereference_check(rcu_torture_current,
1056 rcu_read_lock_bh_held() || 1070 rcu_read_lock_bh_held() ||
1057 rcu_read_lock_sched_held() || 1071 rcu_read_lock_sched_held() ||
@@ -1075,8 +1089,6 @@ static void rcu_torture_timer(unsigned long unused)
1075 } 1089 }
1076 completed_end = cur_ops->completed(); 1090 completed_end = cur_ops->completed();
1077 if (pipe_count > 1) { 1091 if (pipe_count > 1) {
1078 unsigned long __maybe_unused ts_rem = do_div(ts, NSEC_PER_USEC);
1079
1080 do_trace_rcu_torture_read(cur_ops->name, &p->rtort_rcu, ts, 1092 do_trace_rcu_torture_read(cur_ops->name, &p->rtort_rcu, ts,
1081 completed, completed_end); 1093 completed, completed_end);
1082 rcutorture_trace_dump(); 1094 rcutorture_trace_dump();
@@ -1122,7 +1134,7 @@ rcu_torture_reader(void *arg)
1122 } 1134 }
1123 idx = cur_ops->readlock(); 1135 idx = cur_ops->readlock();
1124 completed = cur_ops->completed(); 1136 completed = cur_ops->completed();
1125 ts = trace_clock_local(); 1137 ts = rcu_trace_clock_local();
1126 p = rcu_dereference_check(rcu_torture_current, 1138 p = rcu_dereference_check(rcu_torture_current,
1127 rcu_read_lock_bh_held() || 1139 rcu_read_lock_bh_held() ||
1128 rcu_read_lock_sched_held() || 1140 rcu_read_lock_sched_held() ||
@@ -1144,9 +1156,6 @@ rcu_torture_reader(void *arg)
1144 } 1156 }
1145 completed_end = cur_ops->completed(); 1157 completed_end = cur_ops->completed();
1146 if (pipe_count > 1) { 1158 if (pipe_count > 1) {
1147 unsigned long __maybe_unused ts_rem =
1148 do_div(ts, NSEC_PER_USEC);
1149
1150 do_trace_rcu_torture_read(cur_ops->name, &p->rtort_rcu, 1159 do_trace_rcu_torture_read(cur_ops->name, &p->rtort_rcu,
1151 ts, completed, completed_end); 1160 ts, completed, completed_end);
1152 rcutorture_trace_dump(); 1161 rcutorture_trace_dump();