2013-04-24 14:45:09

by Frederic Weisbecker

[permalink] [raw]
Subject: [GIT PULL] nohz: Fixlet and Kconfig cleanup

Ingo,

Please pull the latest nohz branch from:

git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks.git
timers/nohz

HEAD: 65e709dc0c25dbd563861924815e9a3a93878b75

Thanks.

---
Frederic Weisbecker (2):
nohz: Fix unavailable tick_stop tracepoint in dynticks idle
nohz: Remove full dynticks' superfluous dependency on RCU tree

include/trace/events/timer.h | 2 +-
kernel/time/Kconfig | 2 --
2 files changed, 1 insertions(+), 3 deletions(-)

--
1.7.5.4


2013-04-24 14:45:19

by Frederic Weisbecker

[permalink] [raw]
Subject: [PATCH 2/2] nohz: Remove full dynticks' superfluous dependency on RCU tree

Remove the dependency on (TREE_RCU || TREE_PREEMPT_RCU). The full
dynticks option already depends on SMP which implies
(whatever flavour of) RCU tree config anyway.

Signed-off-by: Frederic Weisbecker <[email protected]>
Cc: Chris Metcalf <[email protected]>
Cc: Christoph Lameter <[email protected]>
Cc: Geoff Levand <[email protected]>
Cc: Gilad Ben Yossef <[email protected]>
Cc: Hakan Akkan <[email protected]>
Cc: Ingo Molnar <[email protected]>
Cc: Kevin Hilman <[email protected]>
Cc: Li Zhong <[email protected]>
Cc: Oleg Nesterov <[email protected]>
Cc: Paul E. McKenney <[email protected]>
Cc: Paul Gortmaker <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Steven Rostedt <[email protected]>
Cc: Thomas Gleixner <[email protected]>
---
kernel/time/Kconfig | 2 --
1 files changed, 0 insertions(+), 2 deletions(-)

diff --git a/kernel/time/Kconfig b/kernel/time/Kconfig
index e1ac129..1ea2bba 100644
--- a/kernel/time/Kconfig
+++ b/kernel/time/Kconfig
@@ -104,8 +104,6 @@ config NO_HZ_FULL
depends on SMP
# RCU_USER_QS dependency
depends on HAVE_CONTEXT_TRACKING
- # RCU_NOCB_CPU dependency
- depends on TREE_RCU || TREE_PREEMPT_RCU
depends on VIRT_CPU_ACCOUNTING_GEN
select NO_HZ_COMMON
select RCU_USER_QS
--
1.7.5.4

2013-04-24 14:45:49

by Frederic Weisbecker

[permalink] [raw]
Subject: [PATCH 1/2] nohz: Fix unavailable tick_stop tracepoint in dynticks idle

The trace_tick_stop() tracepoint is only available in full
dynticks. But it's also used by dynticks-idle so let's build
it for the latter config as well.

This fixes:

kernel/time/tick-sched.c: In function tick_nohz_stop_sched_tick:
kernel/time/tick-sched.c:644: error: implicit declaration of function trace_tick_stop
make[2]: *** [kernel/time/tick-sched.o] Erreur 1

Reported-by: Ingo Molnar <[email protected]>
Signed-off-by: Frederic Weisbecker <[email protected]>
Cc: Chris Metcalf <[email protected]>
Cc: Christoph Lameter <[email protected]>
Cc: Geoff Levand <[email protected]>
Cc: Gilad Ben Yossef <[email protected]>
Cc: Hakan Akkan <[email protected]>
Cc: Ingo Molnar <[email protected]>
Cc: Kevin Hilman <[email protected]>
Cc: Li Zhong <[email protected]>
Cc: Oleg Nesterov <[email protected]>
Cc: Paul E. McKenney <[email protected]>
Cc: Paul Gortmaker <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Steven Rostedt <[email protected]>
Cc: Thomas Gleixner <[email protected]>
---
include/trace/events/timer.h | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/include/trace/events/timer.h b/include/trace/events/timer.h
index f5eb53e..e967dd8 100644
--- a/include/trace/events/timer.h
+++ b/include/trace/events/timer.h
@@ -323,7 +323,7 @@ TRACE_EVENT(itimer_expire,
(int) __entry->pid, (unsigned long long)__entry->now)
);

-#ifdef CONFIG_NO_HZ_FULL
+#ifdef CONFIG_NO_HZ_COMMON
TRACE_EVENT(tick_stop,

TP_PROTO(int success, char *error_msg),
--
1.7.5.4

2013-04-24 20:25:22

by David Rientjes

[permalink] [raw]
Subject: Re: [PATCH 1/2] nohz: Fix unavailable tick_stop tracepoint in dynticks idle

On Wed, 24 Apr 2013, Frederic Weisbecker wrote:

> The trace_tick_stop() tracepoint is only available in full
> dynticks. But it's also used by dynticks-idle so let's build
> it for the latter config as well.
>
> This fixes:
>
> kernel/time/tick-sched.c: In function tick_nohz_stop_sched_tick:
> kernel/time/tick-sched.c:644: error: implicit declaration of function trace_tick_stop
> make[2]: *** [kernel/time/tick-sched.o] Erreur 1
>
> Reported-by: Ingo Molnar <[email protected]>
> Signed-off-by: Frederic Weisbecker <[email protected]>
> Cc: Chris Metcalf <[email protected]>
> Cc: Christoph Lameter <[email protected]>
> Cc: Geoff Levand <[email protected]>
> Cc: Gilad Ben Yossef <[email protected]>
> Cc: Hakan Akkan <[email protected]>
> Cc: Ingo Molnar <[email protected]>
> Cc: Kevin Hilman <[email protected]>
> Cc: Li Zhong <[email protected]>
> Cc: Oleg Nesterov <[email protected]>
> Cc: Paul E. McKenney <[email protected]>
> Cc: Paul Gortmaker <[email protected]>
> Cc: Peter Zijlstra <[email protected]>
> Cc: Steven Rostedt <[email protected]>
> Cc: Thomas Gleixner <[email protected]>

Acked-by: David Rientjes <[email protected]>

Fixes all of the build errors I've detected in timers/nohz.