• Thomas Gleixner's avatar
    x86: Do not unregister PIT clocksource on PIT oneshot setup/shutdown · 8cab02dc
    Thomas Gleixner authored
    This basically reverts commit 1a0c009a (x86: unregister PIT
    clocksource when PIT is disabled) because the problem which was tried
    to address with that patch has been solved by commit 3f68535a
    (clocksource: sanity check sysfs clocksource changes).
    
    The problem addressed by the original patch is that PIT could be
    selected as clocksource after the system switched the PIT off or set
    the PIT into one shot mode which would result in complete timekeeping
    wreckage.
    
    Now with the sysfs sanity check in place PIT cannot be selected again
    when the system is in oneshot mode. The system will not switch to one
    shot mode as long as PIT is installed because PIT is not suitable for
    one shot.
    
    The shutdown case which happens when the lapic timer is installed is
    covered by the fact that init_pit_clocksource() is called after the
    lapic timer take over and then does not install the PIT clocksource
    at all.
    
    We should have done the sanity checks back then, but ...
    
    This also solves the locking problem which was reported vs. the
    clocksource rework.
    
    LKML-Reference: <new-submission>
    Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
    Cc: john stultz <johnstul@us.ibm.com>
    Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
    8cab02dc
i8253.c 5.62 KB