
Deepti B Kalakeri wrote:
Hi,
The VirtualQuantity field of the ProcRASD is not getting set properly in case of a *running* KVM guest on F10 with the libvirt-0.5.0-1.fc10.x86_64. While this is not the case for running KVM guest on F9 with libvirt-0.4.4-2.fc9.x86_64. Also, there is no problem with a *running* Xen guest.
This doesn't happen with F9 because the domain_vcpu_count() doesn't exist in the 0.5.1-5 version of the providers.
The following is the error message in the KVM debug output:
libvir: Domain error : invalid argument in virDomainGetVcpus libvir: Domain error : invalid argument in virDomainGetVcpus
This is coming from the call to virDomainGetVcpus() from the domain_vcpu_count() function defined in libxkutil/misc_util.c file. I verified the signature of the virDomainGetVcpus() with the one given on libvirt.org and it matches.
The problem is only when the guest is started, else for the defined guest the VirtualQuantity field of the ProcRASD is set to the vcpu value used.
I am not sure if this is expected behavior for KVM only or if Xen guest should also behave in the same way, or is it a probable regression in the latest libvirt library on F10. I suspect the libvirt library though. Any thoughts ???
I tracked the issue down on a F10 system (with libvirt-0.6.0-3). We are passing NULL for the cpumaps parameter: count = virDomainGetVcpus(dom, info, max, NULL, 0); but libvirt receives a non-NULL value. This causes the following check in virDomainGetVcpus() to fail: if (cpumaps != NULL && maplen < 1) { However, I'm not sure why libvirt is receiving a non-NULL value when we're clearly sending NULL... I'm following up with the libvirt team. -- Kaitlin Rupert IBM Linux Technology Center kaitlin@linux.vnet.ibm.com