For our administration, we need to dynamically reduce the number of virtual
CPUs in each domain, in same way as Xen command "xm vcpu-set". It seems
that no Libvirt function is currently provided for that purpose. I
successfully tried some simple changes in libvirt.c an xend_internal.c,
mainly the following:
snprintf(buf, sizeof(buf), "%d", vcpus);
return xend_op(domain->conn, domain->name, "op",
"set_vcpus", "vcpus",
buf, NULL);
We suggest to add this new function "virDomainSetVcpus" to Libvirt.
I have not tried the hypervisor and xen store accesses for this function.
Do you think they would be necessary?
I am also working on two other functions to reproduce "xm vcpu-pin" and
"xm
vcpu-list" from Libvirt.