diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c index f750b69ca44311299a109de3752f72b326c6b67b..1fd806cb96d4802287ae2a0fdbb1b801a246fe55 100644 --- a/arch/x86/kvm/x86.c +++ b/arch/x86/kvm/x86.c @@ -5229,6 +5229,8 @@ int x86_emulate_instruction(struct kvm_vcpu *vcpu, if (emulation_type & EMULTYPE_SKIP) { kvm_rip_write(vcpu, ctxt->_eip); + if (ctxt->eflags & X86_EFLAGS_RF) + kvm_set_rflags(vcpu, ctxt->eflags & ~X86_EFLAGS_RF); return EMULATE_DONE; }