]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blobdiff - drivers/kvm/kvm_main.c
KVM: Cleanup string I/O instruction emulation
[mirror_ubuntu-artful-kernel.git] / drivers / kvm / kvm_main.c
index 62adaeedfdb06459f73ef115ca3e5cf99f825b0d..661d065fd8663c3dc85d9cbd6c8f1edbc7915afd 100644 (file)
@@ -1221,7 +1221,10 @@ int emulate_instruction(struct kvm_vcpu *vcpu,
        emulate_ctxt.fs_base = get_segment_base(vcpu, VCPU_SREG_FS);
 
        vcpu->mmio_is_write = 0;
+       vcpu->pio.string = 0;
        r = x86_emulate_memop(&emulate_ctxt, &emulate_ops);
+       if (vcpu->pio.string)
+               return EMULATE_DO_MMIO;
 
        if ((r || vcpu->mmio_is_write) && run) {
                run->exit_reason = KVM_EXIT_MMIO;