From 10d38f46c7705c0edac9015d0b136cc893c0c952 Mon Sep 17 00:00:00 2001 From: Michal Privoznik Date: Thu, 27 Jul 2023 15:14:12 +0200 Subject: [PATCH] qemu_hotplug: Don't validate inaccessible fields in qemuDomainChangeMemoryLiveValidateChange() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The qemuDomainChangeMemoryLiveValidateChange() function is called when a live memory device change is requested (via virDomainUpdateDeviceFlags()). Currently, the only model that is allowed to change is VIRTIO_MEM (and the only value that's allowed to change is requestedsize). The aim of the function is to check whether the change user requested follows this rule. And in accordance with defensive programming I made the function check all virDomainMemoryDef struct members. Even those which are unused for VIRTIO_MEM model. Drop these checks as the respective members will be inaccessible soon (as the struct is refined). Signed-off-by: Michal Privoznik Reviewed-by: Ján Tomko --- src/qemu/qemu_hotplug.c | 41 ----------------------------------------- 1 file changed, 41 deletions(-) diff --git a/src/qemu/qemu_hotplug.c b/src/qemu/qemu_hotplug.c index 149c08d392..075a547b16 100644 --- a/src/qemu/qemu_hotplug.c +++ b/src/qemu/qemu_hotplug.c @@ -7025,28 +7025,6 @@ qemuDomainChangeMemoryLiveValidateChange(const virDomainMemoryDef *oldDef, return false; } - if (STRNEQ_NULLABLE(oldDef->nvdimmPath, newDef->nvdimmPath)) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, - _("cannot modify memory path from '%1$s' to '%2$s'"), - NULLSTR(oldDef->nvdimmPath), - NULLSTR(newDef->nvdimmPath)); - return false; - } - - if (oldDef->alignsize != newDef->alignsize) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, - _("cannot modify memory align size from '%1$llu' to '%2$llu'"), - oldDef->alignsize, newDef->alignsize); - return false; - } - - if (oldDef->nvdimmPmem != newDef->nvdimmPmem) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, - _("cannot modify memory pmem from '%1$d' to '%2$d'"), - oldDef->nvdimmPmem, newDef->nvdimmPmem); - return false; - } - if (oldDef->targetNode != newDef->targetNode) { virReportError(VIR_ERR_CONFIG_UNSUPPORTED, _("cannot modify memory targetNode from '%1$d' to '%2$d'"), @@ -7061,12 +7039,6 @@ qemuDomainChangeMemoryLiveValidateChange(const virDomainMemoryDef *oldDef, return false; } - if (oldDef->labelsize != newDef->labelsize) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, - _("cannot modify memory label size from '%1$llu' to '%2$llu'"), - oldDef->labelsize, newDef->labelsize); - return false; - } if (oldDef->blocksize != newDef->blocksize) { virReportError(VIR_ERR_CONFIG_UNSUPPORTED, _("cannot modify memory block size from '%1$llu' to '%2$llu'"), @@ -7076,19 +7048,6 @@ qemuDomainChangeMemoryLiveValidateChange(const virDomainMemoryDef *oldDef, /* requestedsize can change */ - if (oldDef->readonly != newDef->readonly) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", - _("cannot modify memory pmem flag")); - return false; - } - - if ((oldDef->uuid || newDef->uuid) && - !(oldDef->uuid && newDef->uuid && - memcmp(oldDef->uuid, newDef->uuid, VIR_UUID_BUFLEN) == 0)) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", - _("cannot modify memory UUID")); - return false; - } if (oldDef->address != newDef->address) { virReportError(VIR_ERR_CONFIG_UNSUPPORTED,