On 7/23/2025 3:53 PM, Mathias Krause wrote:
I would leave it to Paolo to decide whether a compat property is needed
to disable the hypercall patching by default for newer machine, and keep
the old machine with old behavior (hypercall patching is enabled) by
default.
Bleh, I just noticed that there are KUT tests that actually rely on the
feature[1]. I'll fix these but, looks like, we need to default on for
the feature -- at least for existing machine definitions 🙁
You reminds me.
There is also even a specific KUT hypercall.c, and default off fails it
as well.
enabling apic
smp: waiting for 0 APs
Hypercall via VMCALL: OK
Unhandled exception 6 #UD at ip 00000000004003dd
error_code=0000 rflags=00010002 cs=00000008
rax=00000000ffffffff rcx=00000000000003fd rdx=00000000000003f8
rbx=0000000000000001
rbp=0000000000710ff0 rsi=00000000007107b1 rdi=000000000000000a
r8=00000000007107b1 r9=00000000000003f8 r10=000000000000000d
r11=0000000000000020
r12=0000000000000001 r13=0000000000000000 r14=0000000000000000
r15=0000000000000000
cr0=0000000080000011 cr2=0000000000000000 cr3=000000000040c000
cr4=0000000000000020
cr8=0000000000000000
STACK: @4003dd 4001ad
> Looks like I have to go the compat property route.
[1]
https://gitlab.com/kvm-unit-tests/kvm-unit-tests/-/blob/master/x86/
vmexit.c?ref_type=heads#L36