KVM: x86: fnstcw and fnstsw may cause spurious exception
authorNadav Amit <namit@cs.technion.ac.il>
Thu, 25 Dec 2014 00:52:18 +0000 (02:52 +0200)
committerPaolo Bonzini <pbonzini@redhat.com>
Thu, 8 Jan 2015 21:48:05 +0000 (22:48 +0100)
commit16bebefe29d8495c89961a9d57ea1947547a5211
tree9d5c2504dbacf160c8c0e01bdaa8a522e21b1975
parent3313bc4ee83c4e2870d8e83800c6064b0d215679
KVM: x86: fnstcw and fnstsw may cause spurious exception

Since the operand size of fnstcw and fnstsw is updated during the execution,
the emulation may cause spurious exceptions as it reads the memory beforehand.

Marking these instructions as Mov (since the previous value is ignored) and
DstMem16 to simplify the setting of operand size.

Signed-off-by: Nadav Amit <namit@cs.technion.ac.il>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/emulate.c