
I tracked this down, and it's failing the if (cpumaps != NULL && maplen < 1) check in libvirt.c because cpumaps is non-NULL. Which is very strange because I'm definitely passing a NULL value. The qemud/remote.c helper for the virDomainGetVcpus method is just doing a totally bogus calculation/allocation for the cpumaps field. It needs fixing somehow, but I'm not sure how yet Any update on this?
I've had another look at it, and believe I have a suitable fix. There were two problems. - Not allocating a large enough array for the cpumaps field - Not respecting a cpumaplen=0, as meaning pass cpumaps=NULL
The latter is what was causing the error message you saw I believe. Can you try the following patch
+1 (although, i think this is already upstream, sorry for the slow response).
I am seeing a new issue now. After calling virDomainSetSchedulerParameters() on a KVM guest, virDomainGetVcpus()
Oops, the virDomainSetSchedulerParameters() here was a typo. Anyway, I tracked this issue down to a conflicting install of libvirt on the system. After removing all versions of libvirt and reinstalling, this is no longer any issue. -- Kaitlin Rupert IBM Linux Technology Center kaitlin@linux.vnet.ibm.com