KVM: PPC: Keep SRR1 flags around in shadow_msr
authorAlexander Graf <agraf@suse.de>
Fri, 15 Jan 2010 13:49:13 +0000 (14:49 +0100)
committerMarcelo Tosatti <mtosatti@redhat.com>
Mon, 1 Mar 2010 15:35:56 +0000 (12:35 -0300)
commitf7adbba1e5d464b0d449adac1eb2519be6be9728
tree5a7580ac34b8abfb976525b9802d860e01cc3581
parent1c0006d8d131585095c4a27dbfcfb3970807a35e
KVM: PPC: Keep SRR1 flags around in shadow_msr

SRR1 stores more information that just the MSR value. It also stores
valuable information about the type of interrupt we received, for
example whether the storage interrupt we just got was because of a
missing htab entry or not.

We use that information to speed up the exit path.

Now if we get preempted before we can interpret the shadow_msr values,
we get into vcpu_put which then calls the MSR handler, which then sets
all the SRR1 information bits in shadow_msr to 0. Great.

So let's preserve the SRR1 specific bits in shadow_msr whenever we set
the MSR. They don't hurt.

Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Avi Kivity <avi@redhat.com>
arch/powerpc/include/asm/kvm_host.h
arch/powerpc/kernel/asm-offsets.c
arch/powerpc/kvm/book3s.c
arch/powerpc/kvm/book3s_64_interrupts.S