]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
KVM: x86: Enable support for emulating AVX MOV instructions
authorPaolo Bonzini <pbonzini@redhat.com>
Fri, 14 Nov 2025 00:36:33 +0000 (19:36 -0500)
committerSean Christopherson <seanjc@google.com>
Thu, 20 Nov 2025 15:26:08 +0000 (07:26 -0800)
commitebec25438f3dbc79ea1ff274b1fe97d277b1545f
treed9989b4e4c86e9add1c58c7c86b128b883203543
parentf0585a714a7531afaa23b3351a316f61ccaa7b00
KVM: x86: Enable support for emulating AVX MOV instructions

Some users of KVM have emulated devices (typically added to private
forks of QEMU) that execute AVX instructions on PCI BARs.  Whenever
the guest OS tries to do that, an illegal instruction exception or
emulation failure is triggered.

Add the Avx flag to move instructions:
- (66) 0f 10 - MOVUPS/MOVUPD from memory
- (66) 0f 11 - MOVUPS/MOVUPD to memory
- 66 0f 6f - MOVDQA from memory
- 66 0f 7f - MOVDQA to memory
- f3 0f 6f - MOVDQU from memory
- f3 0f 7f - MOVDQU to memory
- (66) 0f 28 - MOVAPS/MOVAPD from memory
- (66) 0f 29 - MOVAPS/MOVAPD to memory
- (66) 0f 2b - MOVNTPS/MOVNTPD to memory
- 66 0f e7 - MOVNTDQ to memory
- 66 0f 38 2a - MOVNTDQA to memory

Co-developed-by: Keith Busch <kbusch@kernel.org>
Signed-off-by: Keith Busch <kbusch@kernel.org>
Link: https://lore.kernel.org/kvm/BD108C42-0382-4B17-B601-434A4BD038E7@fb.com/T/
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Link: https://patch.msgid.link/20251114003633.60689-11-pbonzini@redhat.com
Signed-off-by: Sean Christopherson <seanjc@google.com>
arch/x86/kvm/emulate.c