• Cyril Bur's avatar
    powerpc: add running_clock for powerpc to prevent spurious softlockup warnings · 4be1b297
    Cyril Bur authored
    On POWER8 virtualised kernels the VTB register can be read to have a view
    of time that only increases while the guest is running.  This will prevent
    guests from seeing time jump if a guest is paused for significant amounts
    of time.
    
    On POWER7 and below virtualised kernels stolen time is subtracted from
    local_clock as a best effort approximation.  This will not eliminate
    spurious warnings in the case of a suspended guest but may reduce the
    occurance in the case of softlockups due to host over commit.
    
    Bare metal kernels should avoid reading the VTB as KVM does not restore
    sane values when not executing, the approxmation is fine as host kernels
    won't observe any stolen time.
    
    [akpm@linux-foundation.org: coding-style fixes]
    Signed-off-by: default avatarCyril Bur <cyrilbur@gmail.com>
    Cc: Michael Ellerman <mpe@ellerman.id.au>
    Cc: Andrew Jones <drjones@redhat.com>
    Acked-by: default avatarDon Zickus <dzickus@redhat.com>
    Cc: Ingo Molnar <mingo@kernel.org>
    Cc: Ulrich Obergfell <uobergfe@redhat.com>
    Cc: chai wen <chaiw.fnst@cn.fujitsu.com>
    Cc: Fabian Frederick <fabf@skynet.be>
    Cc: Aaron Tomlin <atomlin@redhat.com>
    Cc: Ben Zhang <benzh@chromium.org>
    Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
    Cc: John Stultz <john.stultz@linaro.org>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    4be1b297
time.c 28.4 KB