Signed-off-by: Gleb Natapov <[email protected]>
---
 arch/x86/kvm/emulate.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/arch/x86/kvm/emulate.c b/arch/x86/kvm/emulate.c
index 12c630c..8f5e4c8 100644
--- a/arch/x86/kvm/emulate.c
+++ b/arch/x86/kvm/emulate.c
@@ -2474,7 +2474,6 @@ x86_emulate_insn(struct x86_emulate_ctxt *ctxt, struct 
x86_emulate_ops *ops)
                                goto done;
                        }
                }
-               register_address_increment(c, &c->regs[VCPU_REGS_RCX], -1);
                c->eip = ctxt->eip;
        }
 
@@ -2943,6 +2942,9 @@ writeback:
                                         c->regs[VCPU_REGS_RDI]);
        }
 
+       if (c->rep_prefix)
+               register_address_increment(c, &c->regs[VCPU_REGS_RCX], -1);
+
        /* Commit shadow register state. */
        memcpy(ctxt->vcpu->arch.regs, c->regs, sizeof c->regs);
        kvm_rip_write(ctxt->vcpu, c->eip);
-- 
1.6.5

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to