From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id B8966C3ABDD for ; Thu, 15 May 2025 18:42:59 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id BABA86B0093; Thu, 15 May 2025 14:42:57 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id B5B626B00AF; Thu, 15 May 2025 14:42:57 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9AE756B00B7; Thu, 15 May 2025 14:42:57 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 783D96B00AF for ; Thu, 15 May 2025 14:42:57 -0400 (EDT) Received: from smtpin22.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 9AA8C1604E0 for ; Thu, 15 May 2025 18:42:58 +0000 (UTC) X-FDA: 83446014036.22.41438A4 Received: from mail-pl1-f181.google.com (mail-pl1-f181.google.com [209.85.214.181]) by imf02.hostedemail.com (Postfix) with ESMTP id B2CC780008 for ; Thu, 15 May 2025 18:42:56 +0000 (UTC) Authentication-Results: imf02.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=4d4+OCAc; spf=pass (imf02.hostedemail.com: domain of vannapurve@google.com designates 209.85.214.181 as permitted sender) smtp.mailfrom=vannapurve@google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1747334576; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=OE706X3jddYBbsCzcihcsNrO+b6byFOlN93t1s1rrXY=; b=s1wjbsrO1VsqSIvnpJjkNmNQMuevqED3xu+QiZRbR9xBhi9zAyIF4jmiJbgKt/2/tOUAiE QMdQDi0lhKxlFK3x1/fR2zoT7skdwlcmgMzqyerALKqH6oKITfx8RPEFfNdlMni3tcRhCp qJBNXPlCbxbdzUmqgJsAsVxbVeINajU= ARC-Authentication-Results: i=1; imf02.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=4d4+OCAc; spf=pass (imf02.hostedemail.com: domain of vannapurve@google.com designates 209.85.214.181 as permitted sender) smtp.mailfrom=vannapurve@google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1747334576; a=rsa-sha256; cv=none; b=Kr/vVeIzggGsHp7xJTgZoxp5ypawWtRM2RcLZwbn86O7ChNEH6MdCIxz7uGZ3Hs2C1YxWc UpIrHBNufCFRnRraac9ukdJULKfixxgqjUKu8DLy/Bt6I7irpYHfvS/5wzwmWhOrUU5Nko 4xCVtH0zKM26eiBvE0DD9ShWv2PRzJA= Received: by mail-pl1-f181.google.com with SMTP id d9443c01a7336-231ba6da557so23285ad.1 for ; Thu, 15 May 2025 11:42:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1747334575; x=1747939375; darn=kvack.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=OE706X3jddYBbsCzcihcsNrO+b6byFOlN93t1s1rrXY=; b=4d4+OCAcWlQl7eSpyg2xrb95O3B0GG/qgpONMyXy1P1IAGR4waih+FqdBZYD1oSxLi TIIevBWGW48QY9t//ZL4/LRvv5pgdF0deiYzSgEbGQhe8ks2irWjXAAMyCdTvqFL8qY6 bJQYa9WzcrawdpiNVIkhom8l4dbEASQfNO9UOCRSrLnn5rzW3CjhmG0fupjwecQhJmB1 lukvrkr5GKcRNkJujndYsbXX9icpFLGrbMh1Hnw0tWRfVQ4cunYDYyVEVZqpk2vXjnRF 8xFfO68LzMXY6rCQ/Jf+6mS510Ou/NdXFCiuYsT82rnNyOViZgY1qbeN9B+E5MeOALYf soMA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1747334575; x=1747939375; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=OE706X3jddYBbsCzcihcsNrO+b6byFOlN93t1s1rrXY=; b=rj+FBB+mWTGAJSeRoxst9dVWS2PlvdlRkRUhjc0PBt2X8bvAqnD7OcE0yQ8tuiX+la aLxpvctVSfp9zvouxwDyXXRqZvoZao9t3j6hiSX+o7PdJgzDUqssSCYymA7enms/aMt9 nGhBmFgYmv6r++EOHbwMTX2SedNKqSN8OTbM0UHGaV6myaY+hwL8+BOmat5QRBEl4WiL RDfRZh2gLBHxsO6Qcnxf7FkdPPTpIvRg6gLjfO4vqXhMMnKYJs7GS+p3L/euZBn2aonO YxFPfUnKF6G4LiaoZA38mAmV207g5pmmloSVdej72liL2WreOrdjaINNTcqxIfjdmERQ jyJQ== X-Forwarded-Encrypted: i=1; AJvYcCVtmwtyArDzx+5npP30OpfHnohoI1H7VzuHfXagNKkRHl6SAmaY9qv5jVa7NlYGK4qmZB5P2cB31w==@kvack.org X-Gm-Message-State: AOJu0Yzh2FD2q9fBxAaOXprRrT9HttRk7sj57vlY92kdRlZNTgxlkVGk TlO6otLyoM1miUMHmuX/c3dTJJTZrHOLFbNshvXBo4HkxW6pG2QaaJo62pTg/O8CWgQz0ktj6On G0da2XjvOz0J3owhidwPJIejP7z53dXT/7Yx5jSgI X-Gm-Gg: ASbGncvMiwUMZmCbw2rimDArL8qqlAf9AUXOH6IA3gy3t6v5D7RJSoRd8/yToe8YOIp m9hTfmSQe1v65IBI8B1hlLkLZCHnRCy8xE/XDvQQXWp0UL80lun7w6UG13esc7xvAkB6Sn6ZaaA DzMNRiZmpyBF7gMuzsNUdkavPQonm3UlvSDk6BIyZQDrwiYY+L6Vd/4wXzQzyeDuo= X-Google-Smtp-Source: AGHT+IGTq3Qv35p4EQDVKyuQpdaEqwPis17PY14p3nnamKgz6JsccKxsXhBauQW2GGY2ychs+aiWiE3WzGrkhDw7670= X-Received: by 2002:a17:903:3b86:b0:215:65f3:27ef with SMTP id d9443c01a7336-231b492239amr3491205ad.12.1747334574890; Thu, 15 May 2025 11:42:54 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Vishal Annapurve Date: Thu, 15 May 2025 11:42:43 -0700 X-Gm-Features: AX0GCFtFPmb6VMVpripLOpX9FHawevhToT7FohCfCgdNjLdWb4V3SRl6QrbKhds Message-ID: Subject: Re: [RFC PATCH v2 00/51] 1G page support for guest_memfd To: "Edgecombe, Rick P" Cc: "ackerleytng@google.com" , "kvm@vger.kernel.org" , "linux-fsdevel@vger.kernel.org" , "linux-mm@kvack.org" , "linux-kernel@vger.kernel.org" , "x86@kernel.org" , "palmer@dabbelt.com" , "pvorel@suse.cz" , "catalin.marinas@arm.com" , "Miao, Jun" , "Shutemov, Kirill" , "pdurrant@amazon.co.uk" , "steven.price@arm.com" , "peterx@redhat.com" , "vbabka@suse.cz" , "jack@suse.cz" , "amoorthy@google.com" , "maz@kernel.org" , "keirf@google.com" , "vkuznets@redhat.com" , "quic_eberman@quicinc.com" , "mail@maciej.szmigiero.name" , "hughd@google.com" , "anthony.yznaga@oracle.com" , "Wang, Wei W" , "Du, Fan" , "Wieczor-Retman, Maciej" , "quic_svaddagi@quicinc.com" , "Hansen, Dave" , "ajones@ventanamicro.com" , "paul.walmsley@sifive.com" , "nsaenz@amazon.es" , "aik@amd.com" , "usama.arif@bytedance.com" , "quic_mnalajal@quicinc.com" , "fvdl@google.com" , "rppt@kernel.org" , "quic_cvanscha@quicinc.com" , "bfoster@redhat.com" , "willy@infradead.org" , "anup@brainfault.org" , "thomas.lendacky@amd.com" , "tabba@google.com" , "mic@digikod.net" , "oliver.upton@linux.dev" , "akpm@linux-foundation.org" , "Zhao, Yan Y" , "binbin.wu@linux.intel.com" , "muchun.song@linux.dev" , "Li, Zhiquan1" , "rientjes@google.com" , "mpe@ellerman.id.au" , "Aktas, Erdem" , "david@redhat.com" , "jgg@ziepe.ca" , "Xu, Haibo1" , "jhubbard@nvidia.com" , "Yamahata, Isaku" , "jthoughton@google.com" , "will@kernel.org" , "steven.sistare@oracle.com" , "jarkko@kernel.org" , "quic_pheragu@quicinc.com" , "chenhuacai@kernel.org" , "Huang, Kai" , "shuah@kernel.org" , "dwmw@amazon.co.uk" , "pankaj.gupta@amd.com" , "Peng, Chao P" , "nikunj@amd.com" , "Graf, Alexander" , "viro@zeniv.linux.org.uk" , "pbonzini@redhat.com" , "yuzenghui@huawei.com" , "jroedel@suse.de" , "suzuki.poulose@arm.com" , "jgowans@amazon.com" , "Xu, Yilun" , "liam.merwick@oracle.com" , "michael.roth@amd.com" , "quic_tsoni@quicinc.com" , "richard.weiyang@gmail.com" , "Weiny, Ira" , "aou@eecs.berkeley.edu" , "Li, Xiaoyao" , "qperret@google.com" , "kent.overstreet@linux.dev" , "dmatlack@google.com" , "james.morse@arm.com" , "brauner@kernel.org" , "pgonda@google.com" , "quic_pderrin@quicinc.com" , "hch@infradead.org" , "roypat@amazon.co.uk" , "seanjc@google.com" Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: B2CC780008 X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: q6bnhdfa9qa98qwm88xdh5r9uq5nstr3 X-HE-Tag: 1747334576-350285 X-HE-Meta: U2FsdGVkX19R0GOks/rpnUbilBug9ze4x2PVuU0Y3J9lP1VhrNEeIKr8KmalRE/fn6QXnGKA/q1tWDmiTtuLugr9K3rcskZCs0bZ4Hf31BITVZD+MxhPsqjJU9Ovw/t81jTk+flH5h3ztHAMNhTQmZCpbfpuRMF8Q0FEuPdULtVPKoJOCYVQlpRltUXw1SkbS8UftEWa4mA/HeSdcmfI7MkqcSWynzoEKiPrFx1pSDUTzdzZuxzX5UFx2R4jLdhPWCq0WJWnEey3shb4gy2z7dbIIw6FxYAYo+mQgu03QB74a+A5IUeYQ8+x45ewRYQUrkkGhpx9Bh4wVmioFyOQAhiBd/vHDMNsaPWiikz74ChB9SHhPlFeqXSSkjdtHqZssw/yoFvAe6e3T34CNYT4DVZ3oX40AKafzQ/Bb4Onw8g8KU3HvJKezluFeQaaUj+oSuhtCKLXsHMZbLC15y+EXa8PZKVM7MXDBIC29jTJ4xRhahwh3fKL696ZZFTOOzLfVO+xXHAqHFLWm+KWzsPVAVWUcKHzW5c1zOSUplFNHLJKaNwQXM/ZgTkfXpAaDusgnmenAt+MrLJWkHA/yqxSuFRENBhimuf/r841Jd65Kw82wd/jL9iJHFHa7mhPSqeAEQDkevDVLP0rlvLgIdA+6KnF+COzr87Rez8HjmzfDMNDOYA+brWd1M3I725WnDQfaLCHURcHLVebOR6nuDuw/KtB7I10A2zscTlXy8oOoqxIdHTStkZDdRXTca+hFJEd2C0G5L/HVeMP+u3sZFmRRSU/xb9YEvhZFWtEaduCJrBc0XHFjy+MfzUlEWOlGoKrTbmS+Pyy2P+FOVguTqk1GGXFCzIYRTI9FN+u3nKJsBUGmCYzIWhcQZekgwo21q1yq3+rNjhOvItZ+wkJ8gPBFa3sw76gWEMmI+DMTGdZELM5vJNmOcUKPVipK8BzzF8ceZbZQLGuajPUbxdcLpb GKogamxV V8u2Y7DWzPxETPiifn/oL3lJIYVJQTuLQvPPZ7eH8YGZT1PqVZ659xz9/VZaLixsRl1SGHOVeKSB87Stqxx70TIJ3hbvTUQZRmUY1YDP5tlxw2rDenJeRUBjhaed+JAgIrKKfD5ZA7QkvthgWcApxU5JNn0033yDVg/nQIRx6sjeLO+TYpdvImrxTT6Rl52Dlb2bXJ6FGl+VuiD2pqegLOm0fb7nZJkOL1xdnSMLWsFumAnFEtZ6LWx2UfIqXiHhcXveH/atx9BKX62xJBkXFlZMugLTzbvwbQZ6rq6wDQ/jumz3SPLcpipV9qrzgpP5sZWgn6uCQXVM2O9dLnWQleSQ6VTZPYpLXzsAqturo98FQBO1W+KB4Iz7lmw== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Thu, May 15, 2025 at 11:03=E2=80=AFAM Edgecombe, Rick P wrote: > > On Wed, 2025-05-14 at 16:41 -0700, Ackerley Tng wrote: > > Hello, > > > > This patchset builds upon discussion at LPC 2024 and many guest_memfd > > upstream calls to provide 1G page support for guest_memfd by taking > > pages from HugeTLB. > > Do you have any more concrete numbers on benefits of 1GB huge pages for > guestmemfd/coco VMs? I saw in the LPC talk it has the benefits as: > - Increase TLB hit rate and reduce page walks on TLB miss > - Improved IO performance > - Memory savings of ~1.6% from HugeTLB Vmemmap Optimization (HVO) > - Bring guest_memfd to parity with existing VMs that use HugeTLB pages fo= r > backing memory > > Do you know how often the 1GB TDP mappings get shattered by shared pages? > > Thinking from the TDX perspective, we might have bigger fish to fry than = 1.6% > memory savings (for example dynamic PAMT), and the rest of the benefits d= on't > have numbers. How much are we getting for all the complexity, over say bu= ddy > allocated 2MB pages? This series should work for any page sizes backed by hugetlb memory. Non-CoCo VMs, pKVM and Confidential VMs all need hugepages that are essential for certain workloads and will emerge as guest_memfd users. Features like KHO/memory persistence in addition also depend on hugepage support in guest_memfd. This series takes strides towards making guest_memfd compatible with usecases where 1G pages are essential and non-confidential VMs are already exercising them. I think the main complexity here lies in supporting in-place conversion which applies to any huge page size even for buddy allocated 2MB pages or THP. This complexity arises because page structs work at a fixed granularity, future roadmap towards not having page structs for guest memory (at least private memory to begin with) should help towards greatly reducing this complexity. That being said, DPAMT and huge page EPT mappings for TDX VMs remain essential and complement this series well for better memory footprint and overall performance of TDX VMs.