}
-static bool
-qemuValidateCpuMax(virDomainDefPtr def, virQEMUCapsPtr qemuCaps)
+static int
+qemuValidateCpuCount(virDomainDefPtr def,
+ virQEMUCapsPtr qemuCaps)
{
- unsigned int maxCpus;
-
- maxCpus = virQEMUCapsGetMachineMaxCpus(qemuCaps, def->os.machine);
- if (!maxCpus)
- return true;
+ unsigned int maxCpus = virQEMUCapsGetMachineMaxCpus(qemuCaps, def->os.machine);
- if (virDomainDefGetVcpusMax(def) > maxCpus) {
- virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
- "%s", _("Maximum CPUs greater than specified machine type limit"));
- return false;
+ if (maxCpus > 0 && virDomainDefGetVcpusMax(def) > maxCpus) {
+ virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
+ _("Maximum CPUs greater than specified machine type limit"));
+ return -1;
}
- return true;
+ return 0;
}
}
}
- if (!qemuValidateCpuMax(vm->def, priv->qemuCaps))
+ if (qemuValidateCpuCount(vm->def, priv->qemuCaps) < 0)
goto cleanup;
if (qemuAssignDeviceAliases(vm->def, priv->qemuCaps) < 0)