linux/arch/powerpc
Paul Mackerras c5fb80d3b2 KVM: PPC: Book3S HV: Fix decrementer timeouts with non-zero TB offset
Commit c7699822bc21 ("KVM: PPC: Book3S HV: Make physical thread 0 do
the MMU switching") reordered the guest entry/exit code so that most
of the guest register save/restore code happened in guest MMU context.
A side effect of that is that the timebase still contains the guest
timebase value at the point where we compute and use vcpu->arch.dec_expires,
and therefore that is now a guest timebase value rather than a host
timebase value.  That in turn means that the timeouts computed in
kvmppc_set_timer() are wrong if the timebase offset for the guest is
non-zero.  The consequence of that is things such as "sleep 1" in a
guest after migration may sleep for much longer than they should.

This fixes the problem by converting between guest and host timebase
values as necessary, by adding or subtracting the timebase offset.
This also fixes an incorrect comment.

Signed-off-by: Paul Mackerras <paulus@samba.org>
Acked-by: Scott Wood <scottwood@freescale.com>
2014-03-29 19:58:39 +11:00
..
boot
configs
crypto
include KVM: PPC: Book3S HV: Don't use kvm_memslots() in real mode 2014-03-29 19:58:35 +11:00
kernel Merge branch 'kvm-ppc-next' of git://github.com/agraf/linux-2.6 into kvm-queue 2014-01-29 18:29:01 +01:00
kvm KVM: PPC: Book3S HV: Fix decrementer timeouts with non-zero TB offset 2014-03-29 19:58:39 +11:00
lib
math-emu
mm memblock: make memblock_set_node() support different memblock_type 2014-01-21 16:19:44 -08:00
net bpf: do not use reciprocal divide 2014-01-15 17:02:08 -08:00
oprofile
perf
platforms Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2014-01-22 21:21:55 -08:00
sysdev
xmon
Kconfig Merge branch 'kvm-ppc-next' of git://github.com/agraf/linux-2.6 into kvm-queue 2014-01-29 18:29:01 +01:00
Kconfig.debug
Makefile
relocs_check.pl