From 456bab54454877e67a1c37db11b20febac1cda6d Mon Sep 17 00:00:00 2001 From: Stefan Reiter Date: Wed, 18 Mar 2020 16:18:44 +0100 Subject: [PATCH] Disable memory hotplugging for custom NUMA topologies This cannot work, since we adjust the 'memory' property of the VM config on hotplugging, but then the user-defined NUMA topology won't match for the next start attempt. Check needs to happen here, since it otherwise fails early with "total memory for NUMA nodes must be equal to vm static memory". With this change the error message reflects what is actually happening and doesn't allow VMs with exactly 1GB of RAM either. Signed-off-by: Stefan Reiter Tested-by: Alwin Antreich --- PVE/QemuServer/Memory.pm | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/PVE/QemuServer/Memory.pm b/PVE/QemuServer/Memory.pm index d500b3b..ae9598b 100644 --- a/PVE/QemuServer/Memory.pm +++ b/PVE/QemuServer/Memory.pm @@ -225,6 +225,12 @@ sub config { if ($hotplug_features->{memory}) { die "NUMA needs to be enabled for memory hotplug\n" if !$conf->{numa}; die "Total memory is bigger than ${MAX_MEM}MB\n" if $memory > $MAX_MEM; + + for (my $i = 0; $i < $MAX_NUMA; $i++) { + die "cannot enable memory hotplugging with custom NUMA topology\n" + if $conf->{"numa$i"}; + } + my $sockets = 1; $sockets = $conf->{sockets} if $conf->{sockets}; -- 2.39.2