On Fri, May 01, 2020 at 04:32:34PM -0400, Joshua Abraham wrote: > On Fri, May 01, 2020 at 01:18:36PM -0700, Sean Christopherson wrote: > > No, the current documentation is correct. It's probably not as clear as > > it could be, but it's accurate as written. More below. > > > > The ioctl() signals to the host kernel that host userspace has paused the > > vCPU. > > > > > The host will set a flag in the pvclock structure that is checked > > > > The host kernel, i.e. KVM, then takes that information and forwards it to > > the guest kernel via the aforementioned pvclock flag. > > > > The proposed change would imply the ioctl() is somehow getting routed > > directly to the guest, which is wrong. > > The rationale is that the guest is what consumes the pvclock flag, the > host kernel does nothing interesting (from the API caller perspective) > besides setting up the kvmclock update. The ioctl calls kvm_set_guest_paused() > which even has a comment saying "[it] indicates to the guest kernel that it has > been stopped by the hypervisor." I think that the docs first sentence should > clearly reflect that the API tells the guest that it has been paused. I don't disagree, but simply doing s/host/guest yields a misleading sentence and inconsistencies with the rest of the paragraph.