Re: virsh vcpuinfo with tcg

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Feb 09, 2015 at 03:20:28PM +0000, Serge Hallyn wrote:
> Hi,
> 
> 'virsh vcpuinfo' in 1.2.12 returns an empty line for VMs using tcg.  I
> assume this is due to commit b07f3d821dfb11 which explicitly sets
> nvcpupids to 0 now.  Is 'virsh vcpuinfo' returning nothing just an
> unfortunate but expected side-effect, or is it a bug and it should
> return info anyway?  My impression is that qemu_driver.c should be
> using vm->def->vcpus rather than priv->nvcpupids to determine the
> # of cpus to show?

The virsh vcpuinfo command calls virDomainGetVcpus() which in QEMU
ends up calling qemuDomainHelperGetVcpus. This method in turn
iterates over the vCPUs calling qemuGetProcessInfo to determine
the CPU time & CPU affinity of the vCPU vs host pCPUs. This only
works if there are threads for each vCPU in QEMU. The QEMU TCG
emulator is single threaded, so we cannot get the data for individual
vCPUs when using TCG.

The previous code would result in virDomainGetVcpus() returning
only a single vCPU record even when the guest have multiple vCPUs,
which is just incorrect.

For some reason though qemuDomainHelperGetVcpus just returns
no data at all now, when it should be returning an error
message "cpu affinity is not available". this just looks like
a logic error there.

Regards,
Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list




[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]