mirror of https://gitee.com/openkylin/libvirt.git
conf: Add check/error for domain supports cold/hotplug
https://bugzilla.redhat.com/show_bug.cgi?id=1624336 Add a check during virDomainDefCompatibleDevice whether the domain supports cold/hotplug of a memory module even though this duplicates the qemuDomainDefValidateMemoryHotplug check. Without this check, the cold/hot plug would fail on the subsequent mem_memory check (since it's 0). Adding a check for max_memory > 0 would allow the subsequent hotplug check to fail, but would cause coldplug to fail with the somewhat opaque message "no free memory device slot available". Signed-off-by: John Ferlan <jferlan@redhat.com> ACKed-by: Michal Privoznik <mprivozn@redhat.com>
This commit is contained in:
parent
4f0854e7df
commit
3972a25f1d
|
@ -28923,6 +28923,13 @@ virDomainDefCompatibleDevice(virDomainDefPtr def,
|
|||
if (dev->type == VIR_DOMAIN_DEVICE_MEMORY) {
|
||||
unsigned long long sz = dev->data.memory->size;
|
||||
|
||||
if (!virDomainDefHasMemoryHotplug(def)) {
|
||||
virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
|
||||
_("cannot use/hotplug a memory device when domain "
|
||||
"'maxMemory' is not defined"));
|
||||
return -1;
|
||||
}
|
||||
|
||||
if ((virDomainDefGetMemoryTotal(def) + sz) > def->mem.max_memory) {
|
||||
virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
|
||||
_("Attaching memory device with size '%llu' would "
|
||||
|
|
Loading…
Reference in New Issue