From 2a1618ca937dbaba1876af44345fd03f2ec39116 Mon Sep 17 00:00:00 2001 From: Jes Sorensen Date: Thu, 16 Apr 2009 16:53:13 +0200 Subject: [PATCH] --- yaml --- r: 146551 b: refs/heads/master c: 4d13c3b04f14a9a72ffcdd082acc243e7e56b4e0 h: refs/heads/master i: 146549: 60e5be958d27589159e2b35efed3ef40b1e1b655 146547: e2df5c83f183c31dae23a424697bd1ed0f913f2e 146543: 6efed4348b8fdcac1f5099e0b07ad1747fc70202 v: v3 --- [refs] | 2 +- trunk/arch/ia64/kvm/kvm-ia64.c | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 64f3c7670ec6..4c71fc0cc6ee 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 457459c3c738dfb37226ba116ba301140da0d1fb +refs/heads/master: 4d13c3b04f14a9a72ffcdd082acc243e7e56b4e0 diff --git a/trunk/arch/ia64/kvm/kvm-ia64.c b/trunk/arch/ia64/kvm/kvm-ia64.c index 5b868db1e9f2..cf5a19390f4e 100644 --- a/trunk/arch/ia64/kvm/kvm-ia64.c +++ b/trunk/arch/ia64/kvm/kvm-ia64.c @@ -619,6 +619,8 @@ static void kvm_purge_vmm_mapping(struct kvm_vcpu *vcpu) static int kvm_vcpu_pre_transition(struct kvm_vcpu *vcpu) { + unsigned long psr; + int r; int cpu = smp_processor_id(); if (vcpu->arch.last_run_cpu != cpu || @@ -630,7 +632,10 @@ static int kvm_vcpu_pre_transition(struct kvm_vcpu *vcpu) vcpu->arch.host_rr6 = ia64_get_rr(RR6); vti_set_rr6(vcpu->arch.vmm_rr); - return kvm_insert_vmm_mapping(vcpu); + local_irq_save(psr); + r = kvm_insert_vmm_mapping(vcpu); + local_irq_restore(psr); + return r; } static void kvm_vcpu_post_transition(struct kvm_vcpu *vcpu)