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 D975AC54754 for ; Fri, 16 May 2025 07:07:56 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 698776B00C7; Fri, 16 May 2025 03:07:54 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 61EFB6B00C8; Fri, 16 May 2025 03:07:54 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 4C0576B00C9; Fri, 16 May 2025 03:07:54 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 2BFAF6B00C7 for ; Fri, 16 May 2025 03:07:54 -0400 (EDT) Received: from smtpin10.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 10D0112184C for ; Fri, 16 May 2025 07:07:55 +0000 (UTC) X-FDA: 83447891310.10.FBD40D7 Received: from mail-qt1-f169.google.com (mail-qt1-f169.google.com [209.85.160.169]) by imf20.hostedemail.com (Postfix) with ESMTP id 211531C0004 for ; Fri, 16 May 2025 07:07:52 +0000 (UTC) Authentication-Results: imf20.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=qg+rGlmR; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf20.hostedemail.com: domain of tabba@google.com designates 209.85.160.169 as permitted sender) smtp.mailfrom=tabba@google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1747379273; 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=Tez76IHCMQvsnU7yC7Z3dKm3rIS9agTxMo2b8/a0wh8=; b=kVA9fxdr1jfmsjsoDzxU09JvOEmj1UClxxJmr0pij7DyDWZtAzbn9suIyFthVIs4alwlQ6 Rwh5RJFUCVFqa91h8OjbMUyDefD6NMTsiOj3pcmpHt7sQJavWy3cajB6W8L2b29SZ+eMb8 JdEaWxDqAxOvAq6Ng8tfTHgxMpbOUKk= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1747379273; a=rsa-sha256; cv=none; b=pD/3tXQPIbuaSikUfmjkVvVWXjJnUdYKfjq+FSyWEM+iQ6bOpvw/fIQVOdLqVzvoJQTxjS oWqwHoPz+omBAwbkJ46PnOgWo1kjzz3MEMKyRB0Wbp4DJo9381US0olQxHd8xJTeEuhM6B bOEfUhpWaa3RwIa0lLCz8/3Qw1mkEC0= ARC-Authentication-Results: i=1; imf20.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=qg+rGlmR; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf20.hostedemail.com: domain of tabba@google.com designates 209.85.160.169 as permitted sender) smtp.mailfrom=tabba@google.com Received: by mail-qt1-f169.google.com with SMTP id d75a77b69052e-47e9fea29easo163411cf.1 for ; Fri, 16 May 2025 00:07:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1747379272; x=1747984072; 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=Tez76IHCMQvsnU7yC7Z3dKm3rIS9agTxMo2b8/a0wh8=; b=qg+rGlmRGZHMrnM2hGno6xUAvXY9sakx8/EOmBxYEQ7nrWTgy90TOvePwpehk2skY9 DuLi5pzYPbbrQTyYtVQ32kVY4EccCxSnNOLq6wzVYku4DL5q2ccFX89miKFiWwqhj0aY BgJ4aDQg0D9dQ46ewxFipMQZZTSWPILprdsb+tGDBhpMCxsKjyw19yVnVrTDwMm5/RCf bnunyGp3cEf38TwWkkeuMODU/9tXmO/Xs58/nTONFBL9FcLRu5l3pJ2ESY4wOPw7IR4R FdYOF6OGIHP0lJTY6QljRcvBfXpnrTrLecXVURgu+yJWAF2owysLdldDBp/pKT58FfEG g4fA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1747379272; x=1747984072; 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=Tez76IHCMQvsnU7yC7Z3dKm3rIS9agTxMo2b8/a0wh8=; b=ec8BEVvJWq86R/sDYhnZqjO2aBU4TjuK8doab+62Auon0K9HRDDX75o5uOwLSx6Uj9 kp4VqMuJycMxloEExRh3uT40yJOSqiMs/ai/lmZe8YMNowNpD8lPS3DZvRpg5aFulAkO RB7WhhLpwtN+zdRpuxNdUN6rnX0Lc8KNdbxuAEfQO8oTspAQDJ8M8reAp8iqjm3BlPYj ywcEYW4MDM+nstGtZdbI8KjU/ogfdF7rQn3eJkZ7LDC932ysDXA8/x5FgtVnIGIKte25 HMf//vWqC79BQYdq5rQgRHQcoG9tiBcdjQovCxN1nLOYL/U+c+sPdnfrkfgVUhCqHnrb JqyA== X-Forwarded-Encrypted: i=1; AJvYcCVY64tGooBOgcq2SjL2uVJXEw2Kwhqfibp/M2ADVhWCwX1IPwPJyIXQPbvQgcrZNa3zLp1e4AFiOg==@kvack.org X-Gm-Message-State: AOJu0Yx5RYm+TnuOjmW5uakJlI5c1xMQpNDfYtiz7uHNVyVsoVS3wbK3 z8GAQds6LGhMvEVpq6MbgquAb3N1mfusRgrdiAYL8QHTt9NIaAQdJPzcNAwa8++fGQXI3N3dDL5 OspKp496nN8kX+QEvTpJ8n/QOZIxWbyRpPNpVA7wv X-Gm-Gg: ASbGncuu+aXqSVAZaJHNmUtAO6zdou8VAjL0oSnsGjnchg7HaVTPuMa7XySmk7YyvNX czlA5TflQ/KNEfYbZIIrNnEvpva+2sQPb1XAhKTfmg3yE3Tq0i9poqi5G6QvVeDjbvwEoZeyNAi WuHMzyL6bCWtV5RcGhVZ7yy+EAYRoxBU23kLtY1JXFMUj/HmyAoy++tzgDxZk= X-Google-Smtp-Source: AGHT+IH1mZBkYFzRyPJJzHe/yhizT4xopI+iUzKMP75ZWa3A53DZt9+qbKlgib2wRN1O5HYqi0njFiCig3+NWslOs0Y= X-Received: by 2002:a05:622a:1646:b0:47d:c9f0:da47 with SMTP id d75a77b69052e-494a3399474mr6319641cf.19.1747379271821; Fri, 16 May 2025 00:07:51 -0700 (PDT) MIME-Version: 1.0 References: <20250513163438.3942405-1-tabba@google.com> <20250513163438.3942405-15-tabba@google.com> In-Reply-To: From: Fuad Tabba Date: Fri, 16 May 2025 09:07:14 +0200 X-Gm-Features: AX0GCFumrLCfwGJXXpv4sHDm4HWDeYyncTUE9HPJGeDi50TPwzgeh3m6MxJtEMo Message-ID: Subject: Re: [PATCH v9 14/17] KVM: arm64: Enable mapping guest_memfd in arm64 To: James Houghton Cc: kvm@vger.kernel.org, linux-arm-msm@vger.kernel.org, linux-mm@kvack.org, pbonzini@redhat.com, chenhuacai@kernel.org, mpe@ellerman.id.au, anup@brainfault.org, paul.walmsley@sifive.com, palmer@dabbelt.com, aou@eecs.berkeley.edu, seanjc@google.com, viro@zeniv.linux.org.uk, brauner@kernel.org, willy@infradead.org, akpm@linux-foundation.org, xiaoyao.li@intel.com, yilun.xu@intel.com, chao.p.peng@linux.intel.com, jarkko@kernel.org, amoorthy@google.com, dmatlack@google.com, isaku.yamahata@intel.com, mic@digikod.net, vbabka@suse.cz, vannapurve@google.com, ackerleytng@google.com, mail@maciej.szmigiero.name, david@redhat.com, michael.roth@amd.com, wei.w.wang@intel.com, liam.merwick@oracle.com, isaku.yamahata@gmail.com, kirill.shutemov@linux.intel.com, suzuki.poulose@arm.com, steven.price@arm.com, quic_eberman@quicinc.com, quic_mnalajal@quicinc.com, quic_tsoni@quicinc.com, quic_svaddagi@quicinc.com, quic_cvanscha@quicinc.com, quic_pderrin@quicinc.com, quic_pheragu@quicinc.com, catalin.marinas@arm.com, james.morse@arm.com, yuzenghui@huawei.com, oliver.upton@linux.dev, maz@kernel.org, will@kernel.org, qperret@google.com, keirf@google.com, roypat@amazon.co.uk, shuah@kernel.org, hch@infradead.org, jgg@nvidia.com, rientjes@google.com, jhubbard@nvidia.com, fvdl@google.com, hughd@google.com, peterx@redhat.com, pankaj.gupta@amd.com, ira.weiny@intel.com Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Stat-Signature: xm8op3uipo74fp136gnt57r9b8aiqkra X-Rspam-User: X-Rspamd-Server: rspam05 X-Rspamd-Queue-Id: 211531C0004 X-HE-Tag: 1747379272-14964 X-HE-Meta: U2FsdGVkX18WgAIjHu/BQGq0c0i1ONT6Tht27VbG0l0/9yg9MZXjUoQ81KCgmAQAmJ8Qk+WFapUKiPFcDih6NWUneoK46I68v/QOVuonj0osOcJ7/zwgOwNmzUiZWOGVBVCL+zW+ub4w534UB42NaHJn0jiM567HTvMKS2pzGM0bdxpO3viPs2Obnsqob7erAL7WvczCqctBZh7W877lmyeQ+JLSUqa6BDn1MQ2Ztiz1oZ4tblnDW7puDbhmjXf8it4k7P40KYMlnPQT0SlNJJm6v1ir1HDOsG9hmlXqpCUQd7Ohe8HVdJSYnSBk5z/zxC1SQMBwUR5SLZJDVM84cNKvSbmfjaLPaD6iNnkM8qOqx+AkuvjaE94ww35GvmTsqXaJPIKBWOyfaoB6cK34lDdxrSn7CDczHjg6ipR+ITic5Nx1/XqLGbOeVar44wNuY223bOEdAqbhJb9swj3yUhVPJbcQ7AhRyju2YJ6g9TajYZYwyTE+aPfItJVsVl7Fhpp/Rt7dAgQeCmetr0YWwuXYZKJszQ5YgcJfCAj+pUCYy5s8nEpzwfuqRa5DsVlugiyrIN4vP4+c8lPJte7Aq95jSAwPjtL/vhbCWosIUP2W7GQi9gVTZ68AveJelzaXiqsf4qKtXFvSC4Exg1aYAFsmB+Y02jMH5bsIR2U9vkCc5WATf1LnBY1Pb+4io+quWWZvEqqRyRKHVxRx+A14QcaTJbD/y6efpGFnaumWkrbgC7txMX9dv1MnAICbm6PWeQ9NvmHSRm1iAjGN6IdGj3neeapK7Y3pAASwjOs95Yz0HEejZaA34879HmOHXs9DY4Y/qHhnsXDaSgyv4xYzhmi6dKZOzbpG06OMkeywEZMuDqHJpQvVlga5WRnMpVQDg1hwzOpRQu0zNr55ZVjaVFn3PHcur/fVsZAyvIGMKHxhGT1uRzRxmEz/R/zNIF5u6K661UkxC5J+McSUOI2 Ty09L9cK lo980G+rgMIutnfDflmJ+OcyV4S85Ozd+RhfguAJus1DWqa0PvpabrRSYrZuBmEeq5zeD+iCBRGiaY2j30jZzj7viTgK6DWBbjpflVOPmyt8AXQCGGZ5ENn9DT09FosfV8uKPibSjUHM/3Y2h7hhYcNo14Z5iSTMdbDFUTXTd+ASKC1pkuPYiknVmYo2Ol+vWagfrZwVE09NQL6UpEPchURRxGWlg5TXOTGOXmwCRqvtwyqhjMVhJjqLIPU0WAxdXfv7sU++nxjD+qcIiAE2XcqR4Y5PscW94h4IIjzZwWTgxNZBtOCpU01ae0Zxfh0tmxlqPqt15pnsmvhnL3XidFz37Og== 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: Hi James, On Fri, 16 May 2025 at 01:51, James Houghton wrote: > > On Tue, May 13, 2025 at 9:35=E2=80=AFAM Fuad Tabba wro= te: > > > > Enable mapping guest_memfd in arm64. For now, it applies to all > > VMs in arm64 that use guest_memfd. In the future, new VM types > > can restrict this via kvm_arch_gmem_supports_shared_mem(). > > > > Signed-off-by: Fuad Tabba > > --- > > arch/arm64/include/asm/kvm_host.h | 10 ++++++++++ > > arch/arm64/kvm/Kconfig | 1 + > > 2 files changed, 11 insertions(+) > > > > diff --git a/arch/arm64/include/asm/kvm_host.h b/arch/arm64/include/asm= /kvm_host.h > > index 08ba91e6fb03..2514779f5131 100644 > > --- a/arch/arm64/include/asm/kvm_host.h > > +++ b/arch/arm64/include/asm/kvm_host.h > > @@ -1593,4 +1593,14 @@ static inline bool kvm_arch_has_irq_bypass(void) > > return true; > > } > > > > +static inline bool kvm_arch_supports_gmem(struct kvm *kvm) > > +{ > > + return IS_ENABLED(CONFIG_KVM_GMEM); > > +} > > This is written as if it is okay for CONFIG_KVM_GMEM not to be > enabled, but when disabling CONFIG_KVM_GMEM you will get an error for > redefining kvm_arch_supports_gmem(). > > I think you either want to include: > > #define kvm_arch_supports_gmem kvm_arch_supports_gmem > > or just do something closer to what x86 does: > > #ifdef CONFIG_KVM_GMEM > #define kvm_arch_supports_gmem(kvm) true > #endif > > + > > +static inline bool kvm_arch_vm_supports_gmem_shared_mem(struct kvm *kv= m) > > +{ > > + return IS_ENABLED(CONFIG_KVM_GMEM_SHARED_MEM); > > +} > > And this applies here as well. > > #define kvm_arch_vm_supports_gmem_shared_mem > kvm_arch_vm_supports_gmem_shared_mem > > or > > #ifdef CONFIG_KVM_GMEM > #define kvm_arch_vm_supports_gmem_shared_mem(kvm) > IS_ENABLED(CONFIG_KVM_GMEM_SHARED_MEM); > #endif > > > + > > #endif /* __ARM64_KVM_HOST_H__ */ > > diff --git a/arch/arm64/kvm/Kconfig b/arch/arm64/kvm/Kconfig > > index 096e45acadb2..8c1e1964b46a 100644 > > --- a/arch/arm64/kvm/Kconfig > > +++ b/arch/arm64/kvm/Kconfig > > @@ -38,6 +38,7 @@ menuconfig KVM > > select HAVE_KVM_VCPU_RUN_PID_CHANGE > > select SCHED_INFO > > select GUEST_PERF_EVENTS if PERF_EVENTS > > + select KVM_GMEM_SHARED_MEM > > This makes it impossible to see the error, but I think we should fix > it anyway. :) Ack. Thank you! /fuad > > help > > Support hosting virtualized guest machines. > > > > -- > > 2.49.0.1045.g170613ef41-goog > >