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