x86/HVM: never retain emulated insn cache when exiting back to guest
authorJan Beulich <jbeulich@suse.com>
Fri, 18 May 2018 10:10:11 +0000 (12:10 +0200)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Tue, 22 May 2018 17:41:33 +0000 (18:41 +0100)
commit048288e04587fe030db48dd9bf192afc342979af
tree27bd90d1b5e8f3a2711c82b5a83234bca3a7b94e
parent3d73ceb94ac367804b436edea429700212a5a1f0
x86/HVM: never retain emulated insn cache when exiting back to guest

Commit 5fcb26e69e ("x86/HVM: don't retain emulated insn cache when
exiting back to guest") didn't go quite far enough: The insn emulator
may itself decide to return X86EMUL_RETRY (currently for certain
CMPXCHG failures and AVX2 gather insns), in which case we'd also exit
back to guest context. Tie the caching to whether we have an I/O
completion pending, instead of x86_emulate()'s return value.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Paul Durrant <paul.durrant@citrix.com>
master commit: 25b0dad541e31bd892d57cbeafe8e0c0bf4e8385
master date: 2018-04-23 11:01:09 +0200

(cherry picked from commit b4ad8a6f152efbd426ce6d11a13f955798fde2cf)

Gbp-Pq: Name x86hvm-never-retain-emulated-insn-cache-.patch
xen/arch/x86/hvm/emulate.c