[libvirt] [PATCH] qemu: Limit refresh of CPU halted state to s390
Daniel P. Berrangé
berrange at redhat.com
Tue Feb 6 11:05:06 UTC 2018
On Tue, Feb 06, 2018 at 12:00:31PM +0100, Peter Krempa wrote:
> On Tue, Feb 06, 2018 at 11:55:07 +0100, Peter Krempa wrote:
> > On Tue, Feb 06, 2018 at 11:18:56 +0100, Viktor Mihajlovski wrote:
> > > Refreshing the halted state can cause VM performance issues. Since
> > > s390 is currently the only architecture with a known interest in
> > > the halted state, we're avoiding to call QEMU on other platforms.
> > >
> > > Signed-off-by: Viktor Mihajlovski <mihajlov at linux.vnet.ibm.com>
> > > ---
> > > src/qemu/qemu_domain.c | 4 ++++
> > > 1 file changed, 4 insertions(+)
> > >
> > > diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c
> > > index df433c2..d2c833f 100644
> > > --- a/src/qemu/qemu_domain.c
> > > +++ b/src/qemu/qemu_domain.c
> > > @@ -8634,6 +8634,10 @@ qemuDomainRefreshVcpuHalted(virQEMUDriverPtr driver,
> > > if (vm->def->virtType == VIR_DOMAIN_VIRT_QEMU)
> > > return 0;
> > >
> > > + /* Only supported on s390(x) */
>
> This would also benefit from a more thorough comment.
>
> > > + if (!ARCH_IS_S390(vm->def->os.arch))
> > > + return 0;
> >
> > I think we also should remove the 'halted' field from the stats output
> > if the information was not gathered at all, since it would falsely reply
> > that the cpu is not halted all the time.
>
> Also to do so you'll probably need to convert the 'halted' bool to a
> tristate, so that the logic determining whether the field should be used
> or not is not present in the stats code but it's in the refresh code as
> you've added it.
Or the lazy way out is to just add ARCH_IS_S390() check in the stats
method too
Regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
More information about the libvir-list
mailing list