From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marcelo Tosatti Date: Tue, 30 Aug 2011 18:36:13 +0000 Subject: Re: [PATCH 0/4] Avoid soft lockup message when KVM is stopped by host Message-Id: <20110830183613.GB23897@amt.cnet> List-Id: References: <1314660435-23293-1-git-send-email-emunson@mgebm.net> <20110830122630.GA19450@amt.cnet> In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable To: Eric B Munson Cc: avi@redhat.com, tglx@linutronix.de, mingo@redhat.com, hpa@zytor.com, arnd@arndb.de, riel@redhat.com, kvm@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org, kvm-ppc@vger.kernel.org, aliguori@us.ibm.com, raharper@us.ibm.com, kvm-ia64@vger.kernel.org On Tue, Aug 30, 2011 at 10:37:13AM -0600, Eric B Munson wrote: > On Tue, Aug 30, 2011 at 06:26, Marcelo Tosatti wrot= e: > > On Mon, Aug 29, 2011 at 05:27:11PM -0600, Eric B Munson wrote: > >> Currently, when qemu stops a guest kernel that guest will issue a soft= lockup > >> message when it resumes. =A0This set provides the ability for qemu to = comminucate > >> to the guest that it has been stopped. =A0When the guest hits the watc= hdog on > >> resume it will check if it was suspended before issuing the warning. > >> > >> Eric B Munson (4): > >> =A0 Add flag to indicate that a vm was stopped by the host > >> =A0 Add functions to check if the host has stopped the vm > >> =A0 Add generic stubs for kvm stop check functions > >> =A0 Add check for suspended vm in softlockup detector > >> > >> =A0arch/x86/include/asm/pvclock-abi.h | =A0 =A01 + > >> =A0arch/x86/include/asm/pvclock.h =A0 =A0 | =A0 =A02 ++ > >> =A0arch/x86/kernel/kvmclock.c =A0 =A0 =A0 =A0 | =A0 14 ++++++++++++++ > >> =A0include/asm-generic/pvclock.h =A0 =A0 =A0| =A0 14 ++++++++++++++ > >> =A0kernel/watchdog.c =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0| =A0 12 +++++= +++++++ > >> =A05 files changed, 43 insertions(+), 0 deletions(-) > >> =A0create mode 100644 include/asm-generic/pvclock.h > >> > >> -- > >> 1.7.4.1 > > > > How is the host supposed to set this flag? >=20 > 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? > > 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. > >