From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by lists.proxmox.com (Postfix) with ESMTPS id D13E9F5FA for ; Fri, 16 Dec 2022 14:38:59 +0100 (CET) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id BA0532260A for ; Fri, 16 Dec 2022 14:38:59 +0100 (CET) Received: from proxmox-new.maurer-it.com (proxmox-new.maurer-it.com [94.136.29.106]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by firstgate.proxmox.com (Proxmox) with ESMTPS for ; Fri, 16 Dec 2022 14:38:59 +0100 (CET) Received: from proxmox-new.maurer-it.com (localhost.localdomain [127.0.0.1]) by proxmox-new.maurer-it.com (Proxmox) with ESMTP id EC52A438EA; Fri, 16 Dec 2022 14:38:58 +0100 (CET) Message-ID: <856f3c0d-a4f6-27b8-5c6d-150527514c20@proxmox.com> Date: Fri, 16 Dec 2022 14:38:58 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.5.0 From: Fiona Ebner To: pve-devel@lists.proxmox.com, aderumier@odiso.com References: <20221209192726.1499142-1-aderumier@odiso.com> <20221209192726.1499142-5-aderumier@odiso.com> Content-Language: en-US In-Reply-To: <20221209192726.1499142-5-aderumier@odiso.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-SPAM-LEVEL: Spam detection results: 0 AWL 0.029 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment NICE_REPLY_A -0.001 Looks like a legit reply (A) SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record URIBL_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to URIBL was blocked. See http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block for more information. [memory.pm] Subject: Re: [pve-devel] [PATCH qemu-server 04/10] memory: add get_static_mem X-BeenThere: pve-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox VE development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 16 Dec 2022 13:38:59 -0000 Am 09.12.22 um 20:27 schrieb Alexandre Derumier: > Signed-off-by: Alexandre Derumier > --- Ideally, this would be two patches: One for introducing the helper One for handling the new 'max' property (the patches that handle 'max' could also be squashed together with the one introducing the property, but It's fine either way). > PVE/QemuServer/Memory.pm | 50 ++++++++++++++++++++++++---------------- > 1 file changed, 30 insertions(+), 20 deletions(-) > > diff --git a/PVE/QemuServer/Memory.pm b/PVE/QemuServer/Memory.pm > index 668508b..90e355b 100644 > --- a/PVE/QemuServer/Memory.pm > +++ b/PVE/QemuServer/Memory.pm > @@ -15,7 +15,33 @@ get_current_memory > ); > > my $MAX_NUMA = 8; > -my $STATICMEM = 1024; > + > +my sub get_static_mem { > + my ($conf) = @_; > + > + my $sockets = 1; Could get the default via load_defaults(). > + $sockets = $conf->{smp} if $conf->{smp}; # old style - no longer iused Can be dropped. AFAICT, smp was not written to configs since the beginning of git history. > + $sockets = $conf->{sockets} if $conf->{sockets}; > + my $hotplug_features = PVE::QemuServer::parse_hotplug_features(defined($conf->{hotplug}) ? $conf->{hotplug} : '1'); > + > + my $static_memory = 0; > + my $memory = PVE::QemuServer::parse_memory($conf->{memory}); > + > + if($memory->{max}) { Style nit: missing space after if > + my $dimm_size = $memory->{max} / 64; > + #static mem can't be lower than 4G and lower than 1 dimmsize by socket > + $static_memory = $dimm_size * $sockets; > + $static_memory = 4096 if $static_memory < 4096; > + } elsif ($hotplug_features->{memory}) { > + #legacy > + $static_memory = 1024; > + $static_memory = $static_memory * $sockets if ($conf->{hugepages} && $conf->{hugepages} == 1024); > + } else { > + $static_memory = $memory->{current}; Style nit: wrong indentation