tick: Fixup more fallout from hrtimer broadcast mode
authorPreeti U Murthy <preeti@linux.vnet.ibm.com>
Sun, 9 Feb 2014 06:02:22 +0000 (11:32 +0530)
committerThomas Gleixner <tglx@linutronix.de>
Sun, 9 Feb 2014 14:11:47 +0000 (15:11 +0100)
The hrtimer mode of broadcast is supported only when
GENERIC_CLOCKEVENTS_BROADCAST and TICK_ONESHOT config options
are enabled. Hence compile in the functions for hrtimer mode
of broadcast only when these options are selected.
Also fix max_delta_ticks value for the pseudo clock device.

Reported-by: Fengguang Wu <fengguang.wu@intel.com>
Reported-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Preeti U Murthy <preeti@linux.vnet.ibm.com>
Link: http://lkml.kernel.org/r/52F719EE.9010304@linux.vnet.ibm.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
include/linux/clockchips.h
kernel/time/Makefile
kernel/time/tick-broadcast-hrtimer.c

index 20a7183f2831dcb4fc4e3cef3ed363751e069e19..2e4cb67f6e560094aa719fe75f595dfbb562cf8e 100644 (file)
@@ -207,6 +207,7 @@ static inline void clockevents_resume(void) {}
 
 static inline int clockevents_notify(unsigned long reason, void *arg) { return 0; }
 static inline int tick_check_broadcast_expired(void) { return 0; }
+static inline void tick_setup_hrtimer_broadcast(void) {};
 
 #endif
 
index 06151ef4a7444d413e7b23372368f9310d9a4ea2..57a413fd0ebf557b947e8fe8b38e3c180f9bfedd 100644 (file)
@@ -3,7 +3,10 @@ obj-y += timeconv.o posix-clock.o alarmtimer.o
 
 obj-$(CONFIG_GENERIC_CLOCKEVENTS_BUILD)                += clockevents.o
 obj-$(CONFIG_GENERIC_CLOCKEVENTS)              += tick-common.o
-obj-$(CONFIG_GENERIC_CLOCKEVENTS_BROADCAST)    += tick-broadcast.o tick-broadcast-hrtimer.o
+ifeq ($(CONFIG_GENERIC_CLOCKEVENTS_BROADCAST),y)
+ obj-y                                         += tick-broadcast.o
+ obj-$(CONFIG_TICK_ONESHOT)                    += tick-broadcast-hrtimer.o
+endif
 obj-$(CONFIG_GENERIC_SCHED_CLOCK)              += sched_clock.o
 obj-$(CONFIG_TICK_ONESHOT)                     += tick-oneshot.o
 obj-$(CONFIG_TICK_ONESHOT)                     += tick-sched.o
index 92425279312bdb0e166f23946ebc13c8a40c2f0c..eb682d5c697cd5b67c988654915d1f5333fbe342 100644 (file)
@@ -82,7 +82,7 @@ static struct clock_event_device ce_broadcast_hrtimer = {
        .min_delta_ns           = 1,
        .max_delta_ns           = KTIME_MAX,
        .min_delta_ticks        = 1,
-       .max_delta_ticks        = KTIME_MAX,
+       .max_delta_ticks        = ULONG_MAX,
        .mult                   = 1,
        .shift                  = 0,
        .cpumask                = cpu_all_mask,