Thread (24 messages) flat view 24 messages, 6 authors, 2011-09-21

Re: [PATCH 0/4] Avoid soft lockup message when KVM is stopped by host

From: Marcelo Tosatti <hidden>
Date: 2011-08-30 18:39:36
Also in: kvm, lkml

On Tue, Aug 30, 2011 at 10:37:13AM -0600, Eric B Munson wrote:
On Tue, Aug 30, 2011 at 06:26, Marcelo Tosatti [off-list ref] wrote:
quoted
On Mon, Aug 29, 2011 at 05:27:11PM -0600, Eric B Munson wrote:
quoted
Currently, when qemu stops a guest kernel that guest will issue a soft lockup
message when it resumes.  This set provides the ability for qemu to comminucate
to the guest that it has been stopped.  When the guest hits the watchdog on
resume it will check if it was suspended before issuing the warning.

Eric B Munson (4):
  Add flag to indicate that a vm was stopped by the host
  Add functions to check if the host has stopped the vm
  Add generic stubs for kvm stop check functions
  Add check for suspended vm in softlockup detector

 arch/x86/include/asm/pvclock-abi.h |    1 +
 arch/x86/include/asm/pvclock.h     |    2 ++
 arch/x86/kernel/kvmclock.c         |   14 ++++++++++++++
 include/asm-generic/pvclock.h      |   14 ++++++++++++++
 kernel/watchdog.c                  |   12 ++++++++++++
 5 files changed, 43 insertions(+), 0 deletions(-)
 create mode 100644 include/asm-generic/pvclock.h

--
1.7.4.1
How is the host supposed to set this flag?
The hypervisor will set the flag (the second bit in the struct
pvclock_vcpu_time_info.flags field) when it stops the guest.  I could
be reading pvclock-abi.h incorrectly, but the way I understand it is
that this structure is used to communicate between hypervisor and
guest.
Yes, its awkward though (to have an interface to modify a bit in
pvclock->flags from QEMU).

Anyway, it appears that all elements to fix this in QEMU without the
need for a paravirt interface are available... did you look into my
suggestion?
quoted
As mentioned previously, if you save save/restore the offset added to
kvmclock on stop/cont (and the TSC MSR, forgot to mention that), no
paravirt infrastructure is required. Which means the issue is also fixed
for older guests.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help