KVM: PPC: Move Shadow MSR calculation to function
authorAlexander Graf <agraf@suse.de>
Fri, 15 Jan 2010 13:49:14 +0000 (14:49 +0100)
committerMarcelo Tosatti <mtosatti@redhat.com>
Mon, 1 Mar 2010 15:35:56 +0000 (12:35 -0300)
commita76f8497fd475028869f4b45087d80df14d74a50
tree02db4225c8ff20e42973a4551569f7b6bbfd0ead
parentf7adbba1e5d464b0d449adac1eb2519be6be9728
KVM: PPC: Move Shadow MSR calculation to function

We keep a copy of the MSR around that we use when we go into the guest context.

That copy is basically the normal process MSR flags OR some allowed guest
specified MSR flags. We also AND the external providers into this, so we get
traps on FPU usage when we haven't activated it on the host yet.

Currently this calculation is part of the set_msr function that we use whenever
we set the guest MSR value. With the external providers, we also have the case
that we don't modify the guest's MSR, but only want to update the shadow MSR.

So let's move the shadow MSR parts to a separate function that we then use
whenever we only need to update it. That way we don't accidently kvm_vcpu_block
within a preempt notifier context.

Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Avi Kivity <avi@redhat.com>
arch/powerpc/kvm/book3s.c