diff options
author | Nadav Amit <namit@cs.technion.ac.il> | 2014-07-21 14:37:28 +0300 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2014-07-21 13:41:58 +0200 |
commit | 163b135e7b09e9158f7eb0aa74e716865e3005d2 (patch) | |
tree | 8f80fe829e1c0aa3860e6aae69744ffa83c3b82f /arch/x86 | |
parent | bb663c7ada380f3c89c2f83fdbe2b3626621385d (diff) | |
download | blackbird-op-linux-163b135e7b09e9158f7eb0aa74e716865e3005d2.tar.gz blackbird-op-linux-163b135e7b09e9158f7eb0aa74e716865e3005d2.zip |
KVM: x86: popf emulation should not change RF
RFLAGS.RF is always zero after popf. Therefore, popf should not updated RF, as
anyhow emulating popf, just as any other instruction should clear RFLAGS.RF.
Signed-off-by: Nadav Amit <namit@cs.technion.ac.il>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'arch/x86')
-rw-r--r-- | arch/x86/kvm/emulate.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/x86/kvm/emulate.c b/arch/x86/kvm/emulate.c index dd074106d0c9..cf117bfe9521 100644 --- a/arch/x86/kvm/emulate.c +++ b/arch/x86/kvm/emulate.c @@ -1675,7 +1675,7 @@ static int emulate_popf(struct x86_emulate_ctxt *ctxt, return rc; change_mask = EFLG_CF | EFLG_PF | EFLG_AF | EFLG_ZF | EFLG_SF | EFLG_OF - | EFLG_TF | EFLG_DF | EFLG_NT | EFLG_RF | EFLG_AC | EFLG_ID; + | EFLG_TF | EFLG_DF | EFLG_NT | EFLG_AC | EFLG_ID; switch(ctxt->mode) { case X86EMUL_MODE_PROT64: |