[pve-devel] [PATCH qemu-server 05/10] memory: get_max_mem: use config memory max

Alexandre Derumier aderumier at odiso.com
Fri Dec 9 20:27:21 CET 2022


Signed-off-by: Alexandre Derumier <aderumier at odiso.com>
---
 PVE/QemuServer/Memory.pm | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/PVE/QemuServer/Memory.pm b/PVE/QemuServer/Memory.pm
index 90e355b..b847742 100644
--- a/PVE/QemuServer/Memory.pm
+++ b/PVE/QemuServer/Memory.pm
@@ -91,7 +91,15 @@ my sub get_max_mem {
     # heuristic: remove 20 bits to get MB and half that as QEMU needs some overhead
     my $bits_to_max_mem = int(1<<($bits - 21));
 
-    return $bits_to_max_mem > 4*1024*1024 ? 4*1024*1024 : $bits_to_max_mem;
+    my $cpu_max_mem = $bits_to_max_mem > 4*1024*1024 ? 4*1024*1024 : $bits_to_max_mem;
+
+    my $confmem = PVE::QemuServer::parse_memory($conf->{memory});
+    if($confmem->{max}) {
+       die "configured memory max can't be bigger than supported cpu architecture $cpu_max_mem MB" if $confmem->{max} > $cpu_max_mem;
+       return $confmem->{max};
+    }
+
+    return $cpu_max_mem;
 }
 
 sub get_current_memory{
-- 
2.30.2





More information about the pve-devel mailing list