summaryrefslogtreecommitdiff
path: root/drivers/kvm/kvm_main.c
diff options
context:
space:
mode:
authorHe, Qing <qing.he@intel.com>2007-08-30 17:04:26 +0800
committerAvi Kivity <avi@qumranet.com>2007-10-13 10:18:26 +0200
commit5cd4f6fd8506f59cb8a232f364c54f6bd8e5150a (patch)
treeb8ca584d9c8e308778b53457d57adadb462305ce /drivers/kvm/kvm_main.c
parenta3d7f85f471f889e4477863a7ca42828ae74e77d (diff)
downloadlwn-5cd4f6fd8506f59cb8a232f364c54f6bd8e5150a.tar.gz
lwn-5cd4f6fd8506f59cb8a232f364c54f6bd8e5150a.zip
KVM: disable tpr/cr8 sync when in-kernel APIC is used
Signed-off-by: Qing He <qing.he@intel.com> Signed-off-by: Avi Kivity <avi@qumranet.com>
Diffstat (limited to 'drivers/kvm/kvm_main.c')
-rw-r--r--drivers/kvm/kvm_main.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/kvm/kvm_main.c b/drivers/kvm/kvm_main.c
index 8f8bfc9160e3..02af24e8350c 100644
--- a/drivers/kvm/kvm_main.c
+++ b/drivers/kvm/kvm_main.c
@@ -2005,7 +2005,8 @@ static int kvm_vcpu_ioctl_run(struct kvm_vcpu *vcpu, struct kvm_run *kvm_run)
sigprocmask(SIG_SETMASK, &vcpu->sigset, &sigsaved);
/* re-sync apic's tpr */
- set_cr8(vcpu, kvm_run->cr8);
+ if (!irqchip_in_kernel(vcpu->kvm))
+ set_cr8(vcpu, kvm_run->cr8);
if (vcpu->pio.cur_count) {
r = complete_pio(vcpu);