summaryrefslogtreecommitdiff
path: root/arch/x86/kvm
diff options
context:
space:
mode:
authorMark Brown <broonie@kernel.org>2014-11-21 18:53:32 +0000
committerMark Brown <broonie@kernel.org>2014-11-21 18:53:32 +0000
commit42f11d14ce8d2d9ac2b8044b97522fbe51642468 (patch)
tree9dd1766c16664dbd2b4250ef8d1537ea4958ad3e /arch/x86/kvm
parent7ce02d568e2acb97373fa675ceaeb556ed8e7835 (diff)
parent09cc926e9a6002790e69ed213217ef9874888624 (diff)
Merge branch 'linux-linaro-lsk' into linux-linaro-lsk-rt
Diffstat (limited to 'arch/x86/kvm')
-rw-r--r--arch/x86/kvm/x86.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
index e01b7eab25ab..2c04038ccaae 100644
--- a/arch/x86/kvm/x86.c
+++ b/arch/x86/kvm/x86.c
@@ -4837,7 +4837,7 @@ static int handle_emulation_failure(struct kvm_vcpu *vcpu)
++vcpu->stat.insn_emulation_fail;
trace_kvm_emulate_insn_failed(vcpu);
- if (!is_guest_mode(vcpu)) {
+ if (!is_guest_mode(vcpu) && kvm_x86_ops->get_cpl(vcpu) == 0) {
vcpu->run->exit_reason = KVM_EXIT_INTERNAL_ERROR;
vcpu->run->internal.suberror = KVM_INTERNAL_ERROR_EMULATION;
vcpu->run->internal.ndata = 0;