[PATCH 0/4] whpx: i386: x2apic emulation for kernel-irqchip=off, feature probing

Mohamed Mediouni posted 4 patches 1 week, 2 days ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20260402053326.23402-1-mohamed@unpredictable.fr
Maintainers: Pedro Barbuda <pbarbuda@microsoft.com>, Mohamed Mediouni <mohamed@unpredictable.fr>, Paolo Bonzini <pbonzini@redhat.com>, Zhao Liu <zhao1.liu@intel.com>, Roman Bolshakov <rbolshakov@ddn.com>, Phil Dennis-Jordan <phil@philjordan.eu>, Wei Liu <wei.liu@kernel.org>
There is a newer version of this series
include/system/whpx-internal.h |   3 +
target/i386/cpu.c              |  25 +++++
target/i386/emulate/x86_emu.c  |   4 +-
target/i386/whpx/whpx-all.c    | 200 ++++++++++++++++++++++++++++++++-
target/i386/whpx/whpx-i386.h   |   4 +
5 files changed, 229 insertions(+), 7 deletions(-)
create mode 100644 target/i386/whpx/whpx-i386.h
[PATCH 0/4] whpx: i386: x2apic emulation for kernel-irqchip=off, feature probing
Posted by Mohamed Mediouni 1 week, 2 days ago
"whpx: i386: disable TbFlushHypercalls for emulated LAPIC" is a
bugfix, and "target/i386: emulate: include name of unhandled instruction"
is a debugging aid.

"whpx: i386: x2apic emulation" makes things slightly better for Windows
10 users. But I strongly recommend *not* relying on it when possible and
using kernel-irqchip=on instead. On Windows 10 however that's more murky
because PIC interrupt injection is broken (interrupts don't wake the vCPU
from HLT) in that case.

"whpx: i386: wire up feature probing" is yet another commit adding a code path
not used on Windows 10. It'll tell the user today which CPU features they set
are incompatible with the hardware but it does not sync that to the CPUID view
that the guest has.

Mohamed Mediouni (4):
  target/i386: emulate: include name of unhandled instruction
  whpx: i386: x2apic emulation
  whpx: i386: wire up feature probing
  whpx: i386: disable TbFlushHypercalls for emulated LAPIC

 include/system/whpx-internal.h |   3 +
 target/i386/cpu.c              |  25 +++++
 target/i386/emulate/x86_emu.c  |   4 +-
 target/i386/whpx/whpx-all.c    | 200 ++++++++++++++++++++++++++++++++-
 target/i386/whpx/whpx-i386.h   |   4 +
 5 files changed, 229 insertions(+), 7 deletions(-)
 create mode 100644 target/i386/whpx/whpx-i386.h

-- 
2.50.1 (Apple Git-155)