KVM: x86 emulator: x86_emulate_insn() return -1 only in case of emulation failure
authorGleb Natapov <gleb@redhat.com>
Wed, 28 Apr 2010 16:15:35 +0000 (19:15 +0300)
committerAvi Kivity <avi@redhat.com>
Sun, 1 Aug 2010 07:35:33 +0000 (10:35 +0300)
commitc3cd7ffaf57ae6ead5b394cebaeb76164059a57f
treed6867ce238cb63a0c8ec69eb7752073569687025
parent411c35b7ef02aefb91e166ffeffad0891d955fcb
KVM: x86 emulator: x86_emulate_insn() return -1 only in case of emulation failure

Currently emulator returns -1 when emulation failed or IO is needed.
Caller tries to guess whether emulation failed by looking at other
variables. Make it easier for caller to recognise error condition by
always returning -1 in case of failure. For this new emulator
internal return value X86EMUL_IO_NEEDED is introduced. It is used to
distinguish between error condition (which returns X86EMUL_UNHANDLEABLE)
and condition that requires IO exit to userspace to continue emulation.

Signed-off-by: Gleb Natapov <gleb@redhat.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
arch/x86/include/asm/kvm_emulate.h
arch/x86/kvm/x86.c