twx-linux/arch
Cyril Bur 4be1b29795 powerpc: add running_clock for powerpc to prevent spurious softlockup warnings
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: Cyril Bur <cyrilbur@gmail.com>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Andrew Jones <drjones@redhat.com>
Acked-by: Don 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: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2015-02-12 18:54:13 -08:00
..
alpha all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
arc all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
arm all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
arm64 all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
avr32 all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
blackfin all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
c6x all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
cris all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
frv all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
hexagon all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
ia64 all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
m32r all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
m68k all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
metag all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
microblaze all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
mips all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
mn10300 all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
nios2 mm: make FIRST_USER_ADDRESS unsigned long on all archs 2015-02-11 17:06:03 -08:00
openrisc all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
parisc all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
powerpc powerpc: add running_clock for powerpc to prevent spurious softlockup warnings 2015-02-12 18:54:13 -08:00
s390 all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
score all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
sh all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
sparc all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
tile all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
um all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
unicore32 all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
x86 all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
xtensa all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
.gitignore
Kconfig