aboutsummaryrefslogtreecommitdiffstats
path: root/arch/ia64/kvm/kvm-ia64.c
diff options
context:
space:
mode:
authorJes Sorensen <jes@sgi.com>2009-04-17 10:43:27 -0400
committerAvi Kivity <avi@redhat.com>2009-06-10 04:48:44 -0400
commit43890ae8bcc5fa88ef3061613efe041b866fbc5a (patch)
treeb1bd435ad9dda722eba682d8fb724c7da84ae20f /arch/ia64/kvm/kvm-ia64.c
parent4d13c3b04f14a9a72ffcdd082acc243e7e56b4e0 (diff)
KVM: ia64: ia64 vcpu_reset() do not call kmalloc() with irqs disabled
Restore local irq enabled state before calling kvm_arch_vcpu_init(), which calls kmalloc(GFP_KERNEL). Signed-off-by: Jes Sorensen <jes@sgi.com> Acked-by: Xiantao Zhang <xiantao.zhang@intel.com> Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'arch/ia64/kvm/kvm-ia64.c')
-rw-r--r--arch/ia64/kvm/kvm-ia64.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/ia64/kvm/kvm-ia64.c b/arch/ia64/kvm/kvm-ia64.c
index cf5a19390f4e..be4413e1f43f 100644
--- a/arch/ia64/kvm/kvm-ia64.c
+++ b/arch/ia64/kvm/kvm-ia64.c
@@ -2001,6 +2001,7 @@ static int vcpu_reset(struct kvm_vcpu *vcpu)
2001 long psr; 2001 long psr;
2002 local_irq_save(psr); 2002 local_irq_save(psr);
2003 r = kvm_insert_vmm_mapping(vcpu); 2003 r = kvm_insert_vmm_mapping(vcpu);
2004 local_irq_restore(psr);
2004 if (r) 2005 if (r)
2005 goto fail; 2006 goto fail;
2006 2007
@@ -2013,7 +2014,6 @@ static int vcpu_reset(struct kvm_vcpu *vcpu)
2013 kvm_purge_vmm_mapping(vcpu); 2014 kvm_purge_vmm_mapping(vcpu);
2014 r = 0; 2015 r = 0;
2015fail: 2016fail:
2016 local_irq_restore(psr);
2017 return r; 2017 return r;
2018} 2018}
2019 2019