On 27.01.2012, at 22:49, Jan Kiszka <jan.kiszka@xxxxxx> wrote: > On 2012-01-27 21:48, Anthony Liguori wrote: >> On 01/17/2012 12:27 PM, Eric B Munson wrote: >>> Often when a guest is stopped from the qemu console, it will report >>> spurious >>> soft lockup warnings on resume. There are kernel patches being >>> discussed that >>> will give the host the ability to tell the guest that it is being >>> stopped and >>> should ignore the soft lockup warning that generates. This patch uses >>> the qemu >>> Notifier system to tell the guest it is about to be stopped. >>> >>> Signed-off-by: Eric B Munson<emunson@xxxxxxxxx> >>> >>> Cc: Avi Kivity<avi@xxxxxxxxxx> >>> Cc: Marcelo Tosatti<mtosatti@xxxxxxxxxx> >>> Cc: Jan Kiszka<jan.kiszka@xxxxxxxxxxx> >>> Cc: ryanh@xxxxxxxxxxxxxxxxxx >>> Cc: aliguori@xxxxxxxxxx >>> Cc: kvm@xxxxxxxxxxxxxxx >>> --- >>> Changes from V6: >>> Remove unnecessary include >>> >>> Changes from V5: >>> KVM_GUEST_PAUSED is now a per vm ioctl instead of per vcpu >>> >>> Changes from V4: >>> Test if the guest paused capability is available before use >>> >>> Changes from V3: >>> Collapse new state change notification function into existsing >>> function. >>> Correct whitespace issues >>> Change ioctl name to KVMCLOCK_GUEST_PAUSED >>> Use for loop to iterate vpcu's >>> >>> Changes from V2: >>> Move ioctl into hw/kvmclock.c so as other arches can use it as it is >>> implemented >>> >>> Changes from V1: >>> Remove unnecessary encapsulating function >>> >>> hw/kvmclock.c | 11 +++++++++++ >>> 1 files changed, 11 insertions(+), 0 deletions(-) >>> >>> diff --git a/hw/kvmclock.c b/hw/kvmclock.c >>> index 3b9fb20..ad79f52 100644 >>> --- a/hw/kvmclock.c >>> +++ b/hw/kvmclock.c >>> @@ -64,10 +64,21 @@ static int kvmclock_post_load(void *opaque, int >>> version_id) >>> static void kvmclock_vm_state_change(void *opaque, int running, >>> RunState state) >>> { >>> + int ret; >>> KVMClockState *s = opaque; >>> + int cap_guest_paused = kvm_check_extension(kvm_state, >>> KVM_CAP_GUEST_PAUSED); >>> >>> if (running) { >>> s->clock_valid = false; >>> + >>> + if (!cap_guest_paused) { >>> + return; >>> + } >>> + >>> + ret = kvm_vm_ioctl(kvm_state, KVMCLOCK_GUEST_PAUSED, 0); >>> + if (ret) { >>> + fprintf(stderr, "kvmclock_vm_state_change: %s\n", >>> strerror(-ret)); >>> + } >>> } >>> } >> >> >> This change looks harmless enough. > > Yep, but needs to be redirected after the file renaming in upstream. > >> What's the state of the kernel >> bits? I would expect this through uq/master. > > Kernel bits aren't merged yet. And the kernel headers will have to be > updated in a previous step. > > BTW, this series [1] would be nice to have. Dunno if there is a pull > planned, but anyone trying to extend the KVM interface current runs > against this. Yeah, I was mostly waiting for acks/nacks. Since I didn't receive any, expect a pullreq next week. Alex > > Jan > > [1] http://thread.gmane.org/gmane.comp.emulators.qemu/132962 > -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html