lkml.org 
[lkml]   [2012]   [Mar]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    SubjectRe: [RFC][PATCH 00/32] Nohz cpusets v2 (adaptive tickless kernel)
    From
    On Tue, Mar 27, 2012 at 5:10 PM, Peter Zijlstra <peterz@infradead.org> wrote:
    > On Tue, 2012-03-27 at 17:02 +0200, Gilad Ben-Yossef wrote:
    >>
    >> In my case, I also had to disable the clocksource watchdog, but only
    >> because TSC is not stable on my VM.
    >> This is really not a nohz/cpuset problem.
    >
    > No but that thing is annoying, I ran afoul of it too the other day.
    >
    > Thomas, would you object to a means of turning that thing off? And if
    > not, do you have a preference as to what particular means
    > (sysctl/sysfs/etc..) ?

    For what it's worth, there's already an CONFIG_CLOCKSOURCE_WATCHDOG
    option, which is hard coded true right now.
    Making it select-able was the path of least resistance for me:

    commit 7a7af328cc0c8f8b837f8b23b4099e5bfd4c5462
    Author: Gilad Ben-Yossef <gilad@benyossef.com>
    Date: Mon Mar 12 17:12:41 2012 +0200

    x86: make clocksource watchdog configurable (not for mainline)

    The clock source watchdog will wake up idle cores.

    Since I'm using KVM to test, where the TSC is always marked
    unstable, I've added this option to allow to disable it to
    assist testing.

    This is not intended for mainlining, just a reference for
    how I tested the patch set.

    diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
    index 0d3116c..21ffc76 100644
    --- a/arch/x86/Kconfig
    +++ b/arch/x86/Kconfig
    @@ -100,9 +100,6 @@ config ARCH_DEFCONFIG
    config GENERIC_CMOS_UPDATE
    def_bool y

    -config CLOCKSOURCE_WATCHDOG
    - def_bool y
    -
    config GENERIC_CLOCKEVENTS
    def_bool y

    @@ -1690,6 +1687,12 @@ config HOTPLUG_CPU
    automatically on SMP systems. )
    Say N if you want to disable CPU hotplug.

    +config CLOCKSOURCE_WATCHDOG
    + bool "Clocksource watchdog"
    + default y
    + help
    + Enable clock source watchdog.
    +
    config COMPAT_VDSO
    def_bool y
    prompt "Compat VDSO support"
    diff --git a/kernel/time/clocksource.c b/kernel/time/clocksource.c
    index a45ca16..30223da 100644
    --- a/kernel/time/clocksource.c
    +++ b/kernel/time/clocksource.c
    @@ -450,6 +450,8 @@ static void clocksource_enqueue_watchdog(struct
    clocksource *cs)
    static inline void clocksource_dequeue_watchdog(struct clocksource *cs) { }
    static inline void clocksource_resume_watchdog(void) { }
    static inline int clocksource_watchdog_kthread(void *data) { return 0; }
    +void clocksource_mark_unstable(struct clocksource *cs) { }
    +

    #endif /* CONFIG_CLOCKSOURCE_WATCHDOG */


    --
    Gilad Ben-Yossef
    Chief Coffee Drinker
    gilad@benyossef.com
    Israel Cell: +972-52-8260388
    US Cell: +1-973-8260388
    http://benyossef.com

    "If you take a class in large-scale robotics, can you end up in a
    situation where the homework eats your dog?"
     -- Jean-Baptiste Queru
    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2012-03-27 17:21    [W:0.026 / U:29.768 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site