CVSROOT: /cvs
Module name: src
Changes by: [email protected] 2025/12/10 08:10:55
Modified files:
sys/arch/amd64/amd64: vmm_machdep.c
Log message:
vmm(4): don't return EIO from ioctl(2) on vcpu halt.
In the current design, if a vcpu halts without interrupts enabled,
the vcpu run loop returns EIO. This was then being returned as the
result of the ioctl(2) call, which is incorrect. The VMM_IOC_RUN
ioctl is successful and this isn't an error condition. vmm(4) already
associates this vcpu state with vcpu termination and communicates
this to vmd(8) in the returned vcpu state.
This is observed primarily by Linux guests that, due to vmd(8) not
emulating an ACPI method to power off, the kernel disables interrupts
and halts the cpu. vmd(8) ends up logging some noise because of the
EIO return value.
ok mlarkin@