qemu: Don't update count of vCPUs if hot-unplug has failed

After live change of cpu counts, the number of processor threads is
verified. This patch makes use of this approach to check if qemu ignored
the request for cpu hot-unplug and report an appropriate message.
This commit is contained in:
Peter Krempa 2013-01-15 16:09:43 +01:00
parent dc350eabb3
commit 761fc48136

View File

@ -3697,6 +3697,15 @@ static int qemuDomainHotplugVcpus(virQEMUDriverPtr driver,
goto cleanup; goto cleanup;
} }
/* check if hotplug has failed */
if (vcpus < oldvcpus && ncpupids == oldvcpus) {
virReportError(VIR_ERR_OPERATION_UNSUPPORTED, "%s",
_("qemu didn't unplug the vCPUs properly"));
vcpus = oldvcpus;
ret = -1;
goto cleanup;
}
if (ncpupids != vcpus) { if (ncpupids != vcpus) {
virReportError(VIR_ERR_INTERNAL_ERROR, virReportError(VIR_ERR_INTERNAL_ERROR,
_("got wrong number of vCPU pids from QEMU monitor. " _("got wrong number of vCPU pids from QEMU monitor. "