From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: <t.lamprecht@proxmox.com> 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 763CC9E8A for <pve-devel@lists.proxmox.com>; Wed, 27 Apr 2022 11:23:42 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 65FAA24803 for <pve-devel@lists.proxmox.com>; Wed, 27 Apr 2022 11:23:12 +0200 (CEST) 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) server-digest SHA256) (No client certificate requested) by firstgate.proxmox.com (Proxmox) with ESMTPS id 2E5E6247D3 for <pve-devel@lists.proxmox.com>; Wed, 27 Apr 2022 11:23:11 +0200 (CEST) Received: from proxmox-new.maurer-it.com (localhost.localdomain [127.0.0.1]) by proxmox-new.maurer-it.com (Proxmox) with ESMTP id 0DDBD42158; Wed, 27 Apr 2022 11:23:11 +0200 (CEST) Message-ID: <b896dcb5-986e-84f1-8135-f7245a39a156@proxmox.com> Date: Wed, 27 Apr 2022 11:23:09 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:100.0) Gecko/20100101 Thunderbird/100.0 Content-Language: en-US To: Proxmox VE development discussion <pve-devel@lists.proxmox.com>, Alexandre Derumier <aderumier@odiso.com> References: <20220306124647.2267293-1-aderumier@odiso.com> From: Thomas Lamprecht <t.lamprecht@proxmox.com> In-Reply-To: <20220306124647.2267293-1-aderumier@odiso.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-SPAM-LEVEL: Spam detection results: 0 AWL 0.026 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 KAM_SHORT 0.001 Use of a URL Shortener for very short URL SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Subject: [pve-devel] applied: [PATCH V2 qemu-server 0/2] enable balloon free-page-reporting X-BeenThere: pve-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox VE development discussion <pve-devel.lists.proxmox.com> List-Unsubscribe: <https://lists.proxmox.com/cgi-bin/mailman/options/pve-devel>, <mailto:pve-devel-request@lists.proxmox.com?subject=unsubscribe> List-Archive: <http://lists.proxmox.com/pipermail/pve-devel/> List-Post: <mailto:pve-devel@lists.proxmox.com> List-Help: <mailto:pve-devel-request@lists.proxmox.com?subject=help> List-Subscribe: <https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel>, <mailto:pve-devel-request@lists.proxmox.com?subject=subscribe> X-List-Received-Date: Wed, 27 Apr 2022 09:23:42 -0000 On 06.03.22 13:46, Alexandre Derumier wrote: > Hi, > > Currently, if a guest vm allocate a memory page, and freed it later in the guest, > the memory is not freed on the host side. > > Balloon device have a new option since qemu 5.1 "free-page-reporting" (and need host kernel 5.7) > > https://events19.linuxfoundation.org/wp-content/uploads/2017/12/KVMForum2018.pdf > https://lwn.net/Articles/759413/ > > This is working like the discard option for disk, memory is freed async by the host when vm is freeing it. > > I'm running it production since 1 month without any problem. With a lot of vms and spiky workload, the memory > freed is really huge. > > Here an example of a host with 650GB+200GB ksm going down to 250GB memory > https://mutulin1.odiso.net/ballon-size.png > (around 400vms with 2GB max memory, previously always allocated) > > > This patch enabled it by default force machine version >= 6.2. > > > changelogv2: > > - enabled it only for machine version > 6.2 > - add test > > Alexandre Derumier (2): > enable balloon free-page-reporting > add test for virtio-balloon free-page-reporting=on. (qemu 6.2) > > PVE/QemuServer.pm | 4 ++- > test/cfg2cmd/q35-simple-7.0.conf.cmd | 2 +- > .../simple-balloon-free-page-reporting.conf | 15 +++++++++ > ...imple-balloon-free-page-reporting.conf.cmd | 33 +++++++++++++++++++ > 4 files changed, 52 insertions(+), 2 deletions(-) > create mode 100644 test/cfg2cmd/simple-balloon-free-page-reporting.conf > create mode 100644 test/cfg2cmd/simple-balloon-free-page-reporting.conf.cmd > applied series, thanks! Had to fixup the existing un-versioned tests though.