From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sean Christopherson Date: Thu, 10 Aug 2023 16:04:37 -0700 Subject: [PATCH v8 02/14] KVM: Declare kvm_arch_flush_remote_tlbs() globally In-Reply-To: References: <20230808231330.3855936-1-rananta@google.com> <20230808231330.3855936-3-rananta@google.com> <30e45ef3-309a-63de-e085-be1645c1be79@redhat.com> Message-ID: List-Id: To: kvm-riscv@lists.infradead.org MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit On Thu, Aug 10, 2023, Raghavendra Rao Ananta wrote: > On Thu, Aug 10, 2023 at 3:20?PM Sean Christopherson wrote: > > On Thu, Aug 10, 2023, Raghavendra Rao Ananta wrote: > > > After doing some experiments, I think it works because of the order in > > > which the inline-definition and the declaration are laid out. If the > > > 'inline' part of the function comes first and then the declaration, we > > > don't see any error. However if the positions were reversed, we would > > > see an error. (I'm not sure what the technical reason for this is). > > > > > > Just to be safe, I can move the definition to arch/x86/kvm/mmu/mmu.c > > > as a non-inline function. > > > > No need, asm/kvm_host.h _must_ be included before the declaration, otherwise the > > declaration wouldn't be made because __KVM_HAVE_ARCH_FLUSH_REMOTE_TLBS wouldn't > > be defined. I.e. we won't run into issues where the non-static declaration comes > > before the static inline definition. > > > > C99 explicitly covers this case: > > > > 6.2.2 Linkages of identifiers > > > > ... > > > > If the declaration of a file scope identifier for an object or a function contains the storage- > > class specifier static, the identifier has internal linkage. > > > > For an identifier declared with the storage-class specifier extern in a scope in which a > > prior declaration of that identifier is visible if the prior declaration specifies internal or > > external linkage, the linkage of the identifier at the later declaration is the same as the > > linkage specified at the prior declaration. If no prior declaration is visible, or if the prior > > declaration specifies no linkage, then the identifier has external linkage. > > > > In short, because the "static inline" declared internal linkage first, it wins. > Thanks for sharing this! I can keep the 'static inline' definition as > is then. However, since a later patch (patch-05/14) defines > kvm_arch_flush_remote_tlbs_range() in arch/x86/kvm/mmu/mmu.c, do you > think we can move this definition to the .c file as well for > consistency? We "can", but I don't see any reason to do so. Trying to make helpers consistently inline or not is usually a fools errand. And in this case, I'd actually rather go the opposite direction and make the range variant an inline. Ha! And I can justify that with minimal effort. The below makes the helper a straight passthrough for CONFIG_HYPERV=n builds, at which point I think it makes sense for it to be inline. If it won't slow your series down even more, any objection to sliding the below patch in somewhere before patch 5? And then add a patch to inline the range-based helper? Disclaimer: compile tested only. --- From: Sean Christopherson Date: Thu, 10 Aug 2023 15:58:53 -0700 Subject: [PATCH] KVM: x86/mmu: Declare flush_remote_tlbs{_range}() hooks iff HYPERV!=n Declare the kvm_x86_ops hooks used to wire up paravirt TLB flushes when running under Hyper-V if and only if CONFIG_HYPERV!=n. Wrapping yet more code with IS_ENABLED(CONFIG_HYPERV) eliminates a handful of conditional branches, and makes it super obvious why the hooks *might* be valid. Signed-off-by: Sean Christopherson --- arch/x86/include/asm/kvm-x86-ops.h | 2 ++ arch/x86/include/asm/kvm_host.h | 4 ++++ arch/x86/kvm/mmu/mmu.c | 6 ++++++ 3 files changed, 12 insertions(+) diff --git a/arch/x86/include/asm/kvm-x86-ops.h b/arch/x86/include/asm/kvm-x86-ops.h index 13bc212cd4bc..6bc1ab0627b7 100644 --- a/arch/x86/include/asm/kvm-x86-ops.h +++ b/arch/x86/include/asm/kvm-x86-ops.h @@ -54,8 +54,10 @@ KVM_X86_OP(set_rflags) KVM_X86_OP(get_if_flag) KVM_X86_OP(flush_tlb_all) KVM_X86_OP(flush_tlb_current) +#if IS_ENABLED(CONFIG_HYPERV) KVM_X86_OP_OPTIONAL(flush_remote_tlbs) KVM_X86_OP_OPTIONAL(flush_remote_tlbs_range) +#endif KVM_X86_OP(flush_tlb_gva) KVM_X86_OP(flush_tlb_guest) KVM_X86_OP(vcpu_pre_run) diff --git a/arch/x86/include/asm/kvm_host.h b/arch/x86/include/asm/kvm_host.h index 60d430b4650f..04fc80112dfe 100644 --- a/arch/x86/include/asm/kvm_host.h +++ b/arch/x86/include/asm/kvm_host.h @@ -1604,9 +1604,11 @@ struct kvm_x86_ops { void (*flush_tlb_all)(struct kvm_vcpu *vcpu); void (*flush_tlb_current)(struct kvm_vcpu *vcpu); +#if IS_ENABLED(CONFIG_HYPERV) int (*flush_remote_tlbs)(struct kvm *kvm); int (*flush_remote_tlbs_range)(struct kvm *kvm, gfn_t gfn, gfn_t nr_pages); +#endif /* * Flush any TLB entries associated with the given GVA. @@ -1814,6 +1816,7 @@ static inline struct kvm *kvm_arch_alloc_vm(void) #define __KVM_HAVE_ARCH_VM_FREE void kvm_arch_free_vm(struct kvm *kvm); +#if IS_ENABLED(CONFIG_HYPERV) #define __KVM_HAVE_ARCH_FLUSH_REMOTE_TLB static inline int kvm_arch_flush_remote_tlb(struct kvm *kvm) { @@ -1823,6 +1826,7 @@ static inline int kvm_arch_flush_remote_tlb(struct kvm *kvm) else return -ENOTSUPP; } +#endif #define kvm_arch_pmi_in_guest(vcpu) \ ((vcpu) && (vcpu)->arch.handling_intr_from_guest) diff --git a/arch/x86/kvm/mmu/mmu.c b/arch/x86/kvm/mmu/mmu.c index 9e4cd8b4a202..0189dfecce1f 100644 --- a/arch/x86/kvm/mmu/mmu.c +++ b/arch/x86/kvm/mmu/mmu.c @@ -271,18 +271,24 @@ static inline unsigned long kvm_mmu_get_guest_pgd(struct kvm_vcpu *vcpu, static inline bool kvm_available_flush_remote_tlbs_range(void) { +#if IS_ENABLED(CONFIG_HYPERV) return kvm_x86_ops.flush_remote_tlbs_range; +#else + return false; +#endif } void kvm_flush_remote_tlbs_range(struct kvm *kvm, gfn_t start_gfn, gfn_t nr_pages) { +#if IS_ENABLED(CONFIG_HYPERV) int ret = -EOPNOTSUPP; if (kvm_x86_ops.flush_remote_tlbs_range) ret = static_call(kvm_x86_flush_remote_tlbs_range)(kvm, start_gfn, nr_pages); if (ret) +#endif kvm_flush_remote_tlbs(kvm); } base-commit: bc9e68820274c025840d3056d63f938d74ca35bb -- From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pg1-f201.google.com (mail-pg1-f201.google.com [209.85.215.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 91E4A1877 for ; Thu, 10 Aug 2023 23:04:39 +0000 (UTC) Received: by mail-pg1-f201.google.com with SMTP id 41be03b00d2f7-53ff4f39c0fso1850990a12.0 for ; Thu, 10 Aug 2023 16:04:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20221208; t=1691708679; x=1692313479; h=content-transfer-encoding:cc:to:from:subject:message-id:references :mime-version:in-reply-to:date:from:to:cc:subject:date:message-id :reply-to; bh=A2HZ014dOId2hDwWOJ0bOX1N/o8JyjLLT0vxMFHcIcY=; b=zqOmZeBt8A5vjDuDwTJVhKh+bNGRe0VjF6JK/9WevOGuyks4aQUZjmMGT5jewTOPGO QNNXbfaZjRGIDjJbXqGA5uvVKLbd540bLxINUf9bbP2sR/lzKTDuuSAu9UifxFDBeqgw 8ZCiTzCGbRSUDsV75zN5fg0b0bdDHBltXflB0Y1pDN9A5qroN68wOB8helk8tdcXtg/S q88I+xcuk/1Hru4Xlm8DyP4ZA0D6FgWJclfTevtUclAlc0FNNmY9CKGjRd5rB8k2w2Km rwPhsysDgjBGkQFjFRsB8HVLPOPutaEu3ax6kOraJ9EBeew1A6TDf7gnL772qKiuaqJg g37A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1691708679; x=1692313479; h=content-transfer-encoding:cc:to:from:subject:message-id:references :mime-version:in-reply-to:date:x-gm-message-state:from:to:cc:subject :date:message-id:reply-to; bh=A2HZ014dOId2hDwWOJ0bOX1N/o8JyjLLT0vxMFHcIcY=; b=b1K3vCT3pythiyAN9sXMG0AONq+6X4iFEOSZVaWzYV1VOusRPN0ppTwc8uvYiRVQTS MjUmL2+kR0oJqNyetSDFAd55MjOWxbZvYavrRTbDN8o0PS/clOxyfIUVUk+/2lG/AKn/ x/bBtX//bUS+Sza/zxH/vzz7Eswshsbj6rNtsQDegwUmDRDKYbJyOj8voke5mNZ0AqRr ZqhMXQkMTPXiuThQ6+K00iP8jTUh8wgruqmEhU4/UgP0QAlbe66HrxFkCiaRgXd3Drvb N79V1F378Wc0gTrqHwWZ/R/cMTDSBNxhpCTf200qH6SEQ8QSvNtZcBCndxlnuRksJUXE Sygg== X-Gm-Message-State: AOJu0Yzdp9k1VtT96I3cCA8hJdmJO7l3NNoj9rkkIgAH0KuAn5CMF1og H/XfYU7RetwtDSb7IvjmqfXECXfpDIc= X-Google-Smtp-Source: AGHT+IEllgdOFrNBSktZ3B9czod0DT40RFdbG9IKB+P9/wA8Lbl3UGUkI/mcLGmHPzlm/kyI0BgShEUaX90= X-Received: from zagreus.c.googlers.com ([fda3:e722:ac3:cc00:7f:e700:c0a8:5c37]) (user=seanjc job=sendgmr) by 2002:a63:7e10:0:b0:563:e825:7f3a with SMTP id z16-20020a637e10000000b00563e8257f3amr14811pgc.11.1691708678622; Thu, 10 Aug 2023 16:04:38 -0700 (PDT) Date: Thu, 10 Aug 2023 16:04:37 -0700 In-Reply-To: Precedence: bulk X-Mailing-List: kvmarm@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20230808231330.3855936-1-rananta@google.com> <20230808231330.3855936-3-rananta@google.com> <30e45ef3-309a-63de-e085-be1645c1be79@redhat.com> Message-ID: Subject: Re: [PATCH v8 02/14] KVM: Declare kvm_arch_flush_remote_tlbs() globally From: Sean Christopherson To: Raghavendra Rao Ananta Cc: Shaoqin Huang , Gavin Shan , Oliver Upton , Marc Zyngier , James Morse , Suzuki K Poulose , Paolo Bonzini , Huacai Chen , Zenghui Yu , Anup Patel , Atish Patra , Jing Zhang , Reiji Watanabe , Colton Lewis , David Matlack , Fuad Tabba , linux-arm-kernel@lists.infradead.org, kvmarm@lists.linux.dev, linux-mips@vger.kernel.org, kvm-riscv@lists.infradead.org, linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org, kvm@vger.kernel.org Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable On Thu, Aug 10, 2023, Raghavendra Rao Ananta wrote: > On Thu, Aug 10, 2023 at 3:20=E2=80=AFPM Sean Christopherson wrote: > > On Thu, Aug 10, 2023, Raghavendra Rao Ananta wrote: > > > After doing some experiments, I think it works because of the order i= n > > > which the inline-definition and the declaration are laid out. If the > > > 'inline' part of the function comes first and then the declaration, w= e > > > don't see any error. However if the positions were reversed, we would > > > see an error. (I'm not sure what the technical reason for this is). > > > > > > Just to be safe, I can move the definition to arch/x86/kvm/mmu/mmu.c > > > as a non-inline function. > > > > No need, asm/kvm_host.h _must_ be included before the declaration, othe= rwise the > > declaration wouldn't be made because __KVM_HAVE_ARCH_FLUSH_REMOTE_TLBS = wouldn't > > be defined. I.e. we won't run into issues where the non-static declara= tion comes > > before the static inline definition. > > > > C99 explicitly covers this case: > > > > 6.2.2 Linkages of identifiers > > > > ... > > > > If the declaration of a file scope identifier for an object or a func= tion contains the storage- > > class specifier static, the identifier has internal linkage. > > > > For an identifier declared with the storage-class specifier extern in= a scope in which a > > prior declaration of that identifier is visible if the prior declarat= ion specifies internal or > > external linkage, the linkage of the identifier at the later declarat= ion is the same as the > > linkage specified at the prior declaration. If no prior declaration i= s visible, or if the prior > > declaration specifies no linkage, then the identifier has external li= nkage. > > > > In short, because the "static inline" declared internal linkage first, = it wins. > Thanks for sharing this! I can keep the 'static inline' definition as > is then. However, since a later patch (patch-05/14) defines > kvm_arch_flush_remote_tlbs_range() in arch/x86/kvm/mmu/mmu.c, do you > think we can move this definition to the .c file as well for > consistency? We "can", but I don't see any reason to do so. Trying to make helpers cons= istently inline or not is usually a fools errand. And in this case, I'd actually ra= ther go the opposite direction and make the range variant an inline. Ha! And I can justify that with minimal effort. The below makes the helpe= r a straight passthrough for CONFIG_HYPERV=3Dn builds, at which point I think i= t makes sense for it to be inline. If it won't slow your series down even more, any objection to sliding the b= elow patch in somewhere before patch 5? And then add a patch to inline the rang= e-based helper? Disclaimer: compile tested only. --- From: Sean Christopherson Date: Thu, 10 Aug 2023 15:58:53 -0700 Subject: [PATCH] KVM: x86/mmu: Declare flush_remote_tlbs{_range}() hooks if= f HYPERV!=3Dn Declare the kvm_x86_ops hooks used to wire up paravirt TLB flushes when running under Hyper-V if and only if CONFIG_HYPERV!=3Dn. Wrapping yet more code with IS_ENABLED(CONFIG_HYPERV) eliminates a handful of conditional branches, and makes it super obvious why the hooks *might* be valid. Signed-off-by: Sean Christopherson --- arch/x86/include/asm/kvm-x86-ops.h | 2 ++ arch/x86/include/asm/kvm_host.h | 4 ++++ arch/x86/kvm/mmu/mmu.c | 6 ++++++ 3 files changed, 12 insertions(+) diff --git a/arch/x86/include/asm/kvm-x86-ops.h b/arch/x86/include/asm/kvm-= x86-ops.h index 13bc212cd4bc..6bc1ab0627b7 100644 --- a/arch/x86/include/asm/kvm-x86-ops.h +++ b/arch/x86/include/asm/kvm-x86-ops.h @@ -54,8 +54,10 @@ KVM_X86_OP(set_rflags) KVM_X86_OP(get_if_flag) KVM_X86_OP(flush_tlb_all) KVM_X86_OP(flush_tlb_current) +#if IS_ENABLED(CONFIG_HYPERV) KVM_X86_OP_OPTIONAL(flush_remote_tlbs) KVM_X86_OP_OPTIONAL(flush_remote_tlbs_range) +#endif KVM_X86_OP(flush_tlb_gva) KVM_X86_OP(flush_tlb_guest) KVM_X86_OP(vcpu_pre_run) diff --git a/arch/x86/include/asm/kvm_host.h b/arch/x86/include/asm/kvm_hos= t.h index 60d430b4650f..04fc80112dfe 100644 --- a/arch/x86/include/asm/kvm_host.h +++ b/arch/x86/include/asm/kvm_host.h @@ -1604,9 +1604,11 @@ struct kvm_x86_ops { =20 void (*flush_tlb_all)(struct kvm_vcpu *vcpu); void (*flush_tlb_current)(struct kvm_vcpu *vcpu); +#if IS_ENABLED(CONFIG_HYPERV) int (*flush_remote_tlbs)(struct kvm *kvm); int (*flush_remote_tlbs_range)(struct kvm *kvm, gfn_t gfn, gfn_t nr_pages); +#endif =20 /* * Flush any TLB entries associated with the given GVA. @@ -1814,6 +1816,7 @@ static inline struct kvm *kvm_arch_alloc_vm(void) #define __KVM_HAVE_ARCH_VM_FREE void kvm_arch_free_vm(struct kvm *kvm); =20 +#if IS_ENABLED(CONFIG_HYPERV) #define __KVM_HAVE_ARCH_FLUSH_REMOTE_TLB static inline int kvm_arch_flush_remote_tlb(struct kvm *kvm) { @@ -1823,6 +1826,7 @@ static inline int kvm_arch_flush_remote_tlb(struct kv= m *kvm) else return -ENOTSUPP; } +#endif =20 #define kvm_arch_pmi_in_guest(vcpu) \ ((vcpu) && (vcpu)->arch.handling_intr_from_guest) diff --git a/arch/x86/kvm/mmu/mmu.c b/arch/x86/kvm/mmu/mmu.c index 9e4cd8b4a202..0189dfecce1f 100644 --- a/arch/x86/kvm/mmu/mmu.c +++ b/arch/x86/kvm/mmu/mmu.c @@ -271,18 +271,24 @@ static inline unsigned long kvm_mmu_get_guest_pgd(str= uct kvm_vcpu *vcpu, =20 static inline bool kvm_available_flush_remote_tlbs_range(void) { +#if IS_ENABLED(CONFIG_HYPERV) return kvm_x86_ops.flush_remote_tlbs_range; +#else + return false; +#endif } =20 void kvm_flush_remote_tlbs_range(struct kvm *kvm, gfn_t start_gfn, gfn_t nr_pages) { +#if IS_ENABLED(CONFIG_HYPERV) int ret =3D -EOPNOTSUPP; =20 if (kvm_x86_ops.flush_remote_tlbs_range) ret =3D static_call(kvm_x86_flush_remote_tlbs_range)(kvm, start_gfn, nr_pages); if (ret) +#endif kvm_flush_remote_tlbs(kvm); } =20 base-commit: bc9e68820274c025840d3056d63f938d74ca35bb --=20 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id C4BAEC001B0 for ; Thu, 10 Aug 2023 23:04:52 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Cc:To:From:Subject:Message-ID: References:Mime-Version:In-Reply-To:Date:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Owner; bh=stCDWhSr2vRGuVti0YS6plNKCrawnEUnBog1+fyOn8o=; b=G7zTPpJIlHWFabO1KSdDPkcXL0 apO88MuWwU/cR99gwdXT3bAndjyjT5tZbEjaJUzgk5vNiI5AfCGDMdqWzRSMpx7z6Giqv/h2/tpi8 vG5Ztp6GgyShUF3vXEZ12fiU41iyvsW6bVzN8Qqw6higkzpVruUAuq68fRnqxkxZI+5mHX/dL/WoZ K7zPcvK+sEwKsTXudNUk5LFU0on0OAXHxo0OOS7fod+VhhjqUGTihAWRgGgtcjl+AfXQUk3Gusk23 nt8eZKpJYRjpTpw6sv6EwcD2g0vTAzBZe3lPQ/4l4UgL4K9jD7Nm6U6NOEd3azxwLeZAaEe4EdLm6 yx2D6haA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1qUEhw-008slH-2k; Thu, 10 Aug 2023 23:04:44 +0000 Received: from mail-pg1-x54a.google.com ([2607:f8b0:4864:20::54a]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1qUEht-008sja-04 for linux-riscv@lists.infradead.org; Thu, 10 Aug 2023 23:04:42 +0000 Received: by mail-pg1-x54a.google.com with SMTP id 41be03b00d2f7-53ff4f39c0fso1850987a12.0 for ; Thu, 10 Aug 2023 16:04:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20221208; t=1691708678; x=1692313478; h=content-transfer-encoding:cc:to:from:subject:message-id:references :mime-version:in-reply-to:date:from:to:cc:subject:date:message-id :reply-to; bh=A2HZ014dOId2hDwWOJ0bOX1N/o8JyjLLT0vxMFHcIcY=; b=0MC+1qS5aT0RvDrX5IaHMaXhXaErKLPRBrB/Qhb9rgmY/6FUVskutRGKLGqj7dY8hZ QRIRnikH8YFjNgr26no9dHROZf3p60slPbecWPaWe27AiUFJ/WfBafaaXTbrUs3CVUqu hhLtZXslkxOrFt2TQSZEudUex+ICR4f926CQFKIQGIAZBOvLfcMDtMJtl8z9MxExyF3m HSUPnDnmO71AFEjYA9qJQWTjeQSK/GOn7SK1H5NcSqwjW6Q/phOxevKNgs7Q+RASqjqg bTDAPkdoWEjWPz8yPMRjP0Nlq0K15tkZPNotUJ4eWFH3He4oVgHfl1pkxkzx7sTODcyz lDyw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1691708678; x=1692313478; h=content-transfer-encoding:cc:to:from:subject:message-id:references :mime-version:in-reply-to:date:x-gm-message-state:from:to:cc:subject :date:message-id:reply-to; bh=A2HZ014dOId2hDwWOJ0bOX1N/o8JyjLLT0vxMFHcIcY=; b=OuR72dswoge2ZF/jQMODT1J51Ah6Noo57lzb9UL/9gYjjh6HgcwPl+ccpRWmqd6Tnx mh6d4JlXGSOPsspBmo8kPUFpPiS4Btf3BiqnW4O7y0py5Tm+4aG3xrXYhyl6DXCh326L enY8jfER35E3bcs/XrT81dkP82SVzlM8W98+tDALsa6GNScGQYN4dxRdiDu67htzYZkf GuI0UdGKU+yBtaGf6naDLm1cMHUebPV3TRmGmoAKBvDwcoMCJ+m8XjCors1rTt8VVdSN j5RoCLm8dzHYfjhHY08q/BVw/4Ykde+Z38C3zVghkLATUqj5FTrfQp3AvsfUvhNkzrVX VnxQ== X-Gm-Message-State: AOJu0Yzd9CxBqzL5iALK2ZjzK+lLBihQmFLztXlwsJhOjN87E3BN6+Wx 2adkggTzsr95U+4Ek+v78257qMQowtk= X-Google-Smtp-Source: AGHT+IEllgdOFrNBSktZ3B9czod0DT40RFdbG9IKB+P9/wA8Lbl3UGUkI/mcLGmHPzlm/kyI0BgShEUaX90= X-Received: from zagreus.c.googlers.com ([fda3:e722:ac3:cc00:7f:e700:c0a8:5c37]) (user=seanjc job=sendgmr) by 2002:a63:7e10:0:b0:563:e825:7f3a with SMTP id z16-20020a637e10000000b00563e8257f3amr14811pgc.11.1691708678622; Thu, 10 Aug 2023 16:04:38 -0700 (PDT) Date: Thu, 10 Aug 2023 16:04:37 -0700 In-Reply-To: Mime-Version: 1.0 References: <20230808231330.3855936-1-rananta@google.com> <20230808231330.3855936-3-rananta@google.com> <30e45ef3-309a-63de-e085-be1645c1be79@redhat.com> Message-ID: Subject: Re: [PATCH v8 02/14] KVM: Declare kvm_arch_flush_remote_tlbs() globally From: Sean Christopherson To: Raghavendra Rao Ananta Cc: Shaoqin Huang , Gavin Shan , Oliver Upton , Marc Zyngier , James Morse , Suzuki K Poulose , Paolo Bonzini , Huacai Chen , Zenghui Yu , Anup Patel , Atish Patra , Jing Zhang , Reiji Watanabe , Colton Lewis , David Matlack , Fuad Tabba , linux-arm-kernel@lists.infradead.org, kvmarm@lists.linux.dev, linux-mips@vger.kernel.org, kvm-riscv@lists.infradead.org, linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org, kvm@vger.kernel.org X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230810_160441_071932_E0A7B58C X-CRM114-Status: GOOD ( 32.32 ) X-BeenThere: linux-riscv@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-riscv" Errors-To: linux-riscv-bounces+linux-riscv=archiver.kernel.org@lists.infradead.org T24gVGh1LCBBdWcgMTAsIDIwMjMsIFJhZ2hhdmVuZHJhIFJhbyBBbmFudGEgd3JvdGU6Cj4gT24g VGh1LCBBdWcgMTAsIDIwMjMgYXQgMzoyMOKAr1BNIFNlYW4gQ2hyaXN0b3BoZXJzb24gPHNlYW5q Y0Bnb29nbGUuY29tPiB3cm90ZToKPiA+IE9uIFRodSwgQXVnIDEwLCAyMDIzLCBSYWdoYXZlbmRy YSBSYW8gQW5hbnRhIHdyb3RlOgo+ID4gPiBBZnRlciBkb2luZyBzb21lIGV4cGVyaW1lbnRzLCBJ IHRoaW5rIGl0IHdvcmtzIGJlY2F1c2Ugb2YgdGhlIG9yZGVyIGluCj4gPiA+IHdoaWNoIHRoZSBp bmxpbmUtZGVmaW5pdGlvbiBhbmQgdGhlIGRlY2xhcmF0aW9uIGFyZSBsYWlkIG91dC4gSWYgdGhl Cj4gPiA+ICdpbmxpbmUnIHBhcnQgb2YgdGhlIGZ1bmN0aW9uIGNvbWVzIGZpcnN0IGFuZCB0aGVu IHRoZSBkZWNsYXJhdGlvbiwgd2UKPiA+ID4gZG9uJ3Qgc2VlIGFueSBlcnJvci4gSG93ZXZlciBp ZiB0aGUgcG9zaXRpb25zIHdlcmUgcmV2ZXJzZWQsIHdlIHdvdWxkCj4gPiA+IHNlZSBhbiBlcnJv ci4gKEknbSBub3Qgc3VyZSB3aGF0IHRoZSB0ZWNobmljYWwgcmVhc29uIGZvciB0aGlzIGlzKS4K PiA+ID4KPiA+ID4gSnVzdCB0byBiZSBzYWZlLCBJIGNhbiBtb3ZlIHRoZSBkZWZpbml0aW9uIHRv IGFyY2gveDg2L2t2bS9tbXUvbW11LmMKPiA+ID4gYXMgYSBub24taW5saW5lIGZ1bmN0aW9uLgo+ ID4KPiA+IE5vIG5lZWQsIGFzbS9rdm1faG9zdC5oIF9tdXN0XyBiZSBpbmNsdWRlZCBiZWZvcmUg dGhlIGRlY2xhcmF0aW9uLCBvdGhlcndpc2UgdGhlCj4gPiBkZWNsYXJhdGlvbiB3b3VsZG4ndCBi ZSBtYWRlIGJlY2F1c2UgX19LVk1fSEFWRV9BUkNIX0ZMVVNIX1JFTU9URV9UTEJTIHdvdWxkbid0 Cj4gPiBiZSBkZWZpbmVkLiAgSS5lLiB3ZSB3b24ndCBydW4gaW50byBpc3N1ZXMgd2hlcmUgdGhl IG5vbi1zdGF0aWMgZGVjbGFyYXRpb24gY29tZXMKPiA+IGJlZm9yZSB0aGUgc3RhdGljIGlubGlu ZSBkZWZpbml0aW9uLgo+ID4KPiA+IEM5OSBleHBsaWNpdGx5IGNvdmVycyB0aGlzIGNhc2U6Cj4g Pgo+ID4gICA2LjIuMiBMaW5rYWdlcyBvZiBpZGVudGlmaWVycwo+ID4KPiA+ICAgLi4uCj4gPgo+ ID4gICBJZiB0aGUgZGVjbGFyYXRpb24gb2YgYSBmaWxlIHNjb3BlIGlkZW50aWZpZXIgZm9yIGFu IG9iamVjdCBvciBhIGZ1bmN0aW9uIGNvbnRhaW5zIHRoZSBzdG9yYWdlLQo+ID4gICBjbGFzcyBz cGVjaWZpZXIgc3RhdGljLCB0aGUgaWRlbnRpZmllciBoYXMgaW50ZXJuYWwgbGlua2FnZS4KPiA+ Cj4gPiAgIEZvciBhbiBpZGVudGlmaWVyIGRlY2xhcmVkIHdpdGggdGhlIHN0b3JhZ2UtY2xhc3Mg c3BlY2lmaWVyIGV4dGVybiBpbiBhIHNjb3BlIGluIHdoaWNoIGEKPiA+ICAgcHJpb3IgZGVjbGFy YXRpb24gb2YgdGhhdCBpZGVudGlmaWVyIGlzIHZpc2libGUgaWYgdGhlIHByaW9yIGRlY2xhcmF0 aW9uIHNwZWNpZmllcyBpbnRlcm5hbCBvcgo+ID4gICBleHRlcm5hbCBsaW5rYWdlLCB0aGUgbGlu a2FnZSBvZiB0aGUgaWRlbnRpZmllciBhdCB0aGUgbGF0ZXIgZGVjbGFyYXRpb24gaXMgdGhlIHNh bWUgYXMgdGhlCj4gPiAgIGxpbmthZ2Ugc3BlY2lmaWVkIGF0IHRoZSBwcmlvciBkZWNsYXJhdGlv bi4gSWYgbm8gcHJpb3IgZGVjbGFyYXRpb24gaXMgdmlzaWJsZSwgb3IgaWYgdGhlIHByaW9yCj4g PiAgIGRlY2xhcmF0aW9uIHNwZWNpZmllcyBubyBsaW5rYWdlLCB0aGVuIHRoZSBpZGVudGlmaWVy IGhhcyBleHRlcm5hbCBsaW5rYWdlLgo+ID4KPiA+IEluIHNob3J0LCBiZWNhdXNlIHRoZSAic3Rh dGljIGlubGluZSIgZGVjbGFyZWQgaW50ZXJuYWwgbGlua2FnZSBmaXJzdCwgaXQgd2lucy4KPiBU aGFua3MgZm9yIHNoYXJpbmcgdGhpcyEgSSBjYW4ga2VlcCB0aGUgJ3N0YXRpYyBpbmxpbmUnIGRl ZmluaXRpb24gYXMKPiBpcyB0aGVuLiBIb3dldmVyLCBzaW5jZSBhIGxhdGVyIHBhdGNoIChwYXRj aC0wNS8xNCkgZGVmaW5lcwo+IGt2bV9hcmNoX2ZsdXNoX3JlbW90ZV90bGJzX3JhbmdlKCkgaW4g YXJjaC94ODYva3ZtL21tdS9tbXUuYywgZG8geW91Cj4gdGhpbmsgd2UgY2FuIG1vdmUgdGhpcyBk ZWZpbml0aW9uIHRvIHRoZSAuYyBmaWxlIGFzIHdlbGwgZm9yCj4gY29uc2lzdGVuY3k/CgpXZSAi Y2FuIiwgYnV0IEkgZG9uJ3Qgc2VlIGFueSByZWFzb24gdG8gZG8gc28uICBUcnlpbmcgdG8gbWFr ZSBoZWxwZXJzIGNvbnNpc3RlbnRseQppbmxpbmUgb3Igbm90IGlzIHVzdWFsbHkgYSBmb29scyBl cnJhbmQuICBBbmQgaW4gdGhpcyBjYXNlLCBJJ2QgYWN0dWFsbHkgcmF0aGVyIGdvCnRoZSBvcHBv c2l0ZSBkaXJlY3Rpb24gYW5kIG1ha2UgdGhlIHJhbmdlIHZhcmlhbnQgYW4gaW5saW5lLgoKSGEh ICBBbmQgSSBjYW4ganVzdGlmeSB0aGF0IHdpdGggbWluaW1hbCBlZmZvcnQuICBUaGUgYmVsb3cg bWFrZXMgdGhlIGhlbHBlciBhCnN0cmFpZ2h0IHBhc3N0aHJvdWdoIGZvciBDT05GSUdfSFlQRVJW PW4gYnVpbGRzLCBhdCB3aGljaCBwb2ludCBJIHRoaW5rIGl0IG1ha2VzCnNlbnNlIGZvciBpdCB0 byBiZSBpbmxpbmUuCgpJZiBpdCB3b24ndCBzbG93IHlvdXIgc2VyaWVzIGRvd24gZXZlbiBtb3Jl LCBhbnkgb2JqZWN0aW9uIHRvIHNsaWRpbmcgdGhlIGJlbG93CnBhdGNoIGluIHNvbWV3aGVyZSBi ZWZvcmUgcGF0Y2ggNT8gIEFuZCB0aGVuIGFkZCBhIHBhdGNoIHRvIGlubGluZSB0aGUgcmFuZ2Ut YmFzZWQKaGVscGVyPwoKRGlzY2xhaW1lcjogY29tcGlsZSB0ZXN0ZWQgb25seS4KCi0tLQpGcm9t OiBTZWFuIENocmlzdG9waGVyc29uIDxzZWFuamNAZ29vZ2xlLmNvbT4KRGF0ZTogVGh1LCAxMCBB dWcgMjAyMyAxNTo1ODo1MyAtMDcwMApTdWJqZWN0OiBbUEFUQ0hdIEtWTTogeDg2L21tdTogRGVj bGFyZSBmbHVzaF9yZW1vdGVfdGxic3tfcmFuZ2V9KCkgaG9va3MgaWZmCiBIWVBFUlYhPW4KCkRl Y2xhcmUgdGhlIGt2bV94ODZfb3BzIGhvb2tzIHVzZWQgdG8gd2lyZSB1cCBwYXJhdmlydCBUTEIg Zmx1c2hlcyB3aGVuCnJ1bm5pbmcgdW5kZXIgSHlwZXItViBpZiBhbmQgb25seSBpZiBDT05GSUdf SFlQRVJWIT1uLiAgV3JhcHBpbmcgeWV0IG1vcmUKY29kZSB3aXRoIElTX0VOQUJMRUQoQ09ORklH X0hZUEVSVikgZWxpbWluYXRlcyBhIGhhbmRmdWwgb2YgY29uZGl0aW9uYWwKYnJhbmNoZXMsIGFu ZCBtYWtlcyBpdCBzdXBlciBvYnZpb3VzIHdoeSB0aGUgaG9va3MgKm1pZ2h0KiBiZSB2YWxpZC4K ClNpZ25lZC1vZmYtYnk6IFNlYW4gQ2hyaXN0b3BoZXJzb24gPHNlYW5qY0Bnb29nbGUuY29tPgot LS0KIGFyY2gveDg2L2luY2x1ZGUvYXNtL2t2bS14ODYtb3BzLmggfCAyICsrCiBhcmNoL3g4Ni9p bmNsdWRlL2FzbS9rdm1faG9zdC5oICAgIHwgNCArKysrCiBhcmNoL3g4Ni9rdm0vbW11L21tdS5j ICAgICAgICAgICAgIHwgNiArKysrKysKIDMgZmlsZXMgY2hhbmdlZCwgMTIgaW5zZXJ0aW9ucygr KQoKZGlmZiAtLWdpdCBhL2FyY2gveDg2L2luY2x1ZGUvYXNtL2t2bS14ODYtb3BzLmggYi9hcmNo L3g4Ni9pbmNsdWRlL2FzbS9rdm0teDg2LW9wcy5oCmluZGV4IDEzYmMyMTJjZDRiYy4uNmJjMWFi MDYyN2I3IDEwMDY0NAotLS0gYS9hcmNoL3g4Ni9pbmNsdWRlL2FzbS9rdm0teDg2LW9wcy5oCisr KyBiL2FyY2gveDg2L2luY2x1ZGUvYXNtL2t2bS14ODYtb3BzLmgKQEAgLTU0LDggKzU0LDEwIEBA IEtWTV9YODZfT1Aoc2V0X3JmbGFncykKIEtWTV9YODZfT1AoZ2V0X2lmX2ZsYWcpCiBLVk1fWDg2 X09QKGZsdXNoX3RsYl9hbGwpCiBLVk1fWDg2X09QKGZsdXNoX3RsYl9jdXJyZW50KQorI2lmIElT X0VOQUJMRUQoQ09ORklHX0hZUEVSVikKIEtWTV9YODZfT1BfT1BUSU9OQUwoZmx1c2hfcmVtb3Rl X3RsYnMpCiBLVk1fWDg2X09QX09QVElPTkFMKGZsdXNoX3JlbW90ZV90bGJzX3JhbmdlKQorI2Vu ZGlmCiBLVk1fWDg2X09QKGZsdXNoX3RsYl9ndmEpCiBLVk1fWDg2X09QKGZsdXNoX3RsYl9ndWVz dCkKIEtWTV9YODZfT1AodmNwdV9wcmVfcnVuKQpkaWZmIC0tZ2l0IGEvYXJjaC94ODYvaW5jbHVk ZS9hc20va3ZtX2hvc3QuaCBiL2FyY2gveDg2L2luY2x1ZGUvYXNtL2t2bV9ob3N0LmgKaW5kZXgg NjBkNDMwYjQ2NTBmLi4wNGZjODAxMTJkZmUgMTAwNjQ0Ci0tLSBhL2FyY2gveDg2L2luY2x1ZGUv YXNtL2t2bV9ob3N0LmgKKysrIGIvYXJjaC94ODYvaW5jbHVkZS9hc20va3ZtX2hvc3QuaApAQCAt MTYwNCw5ICsxNjA0LDExIEBAIHN0cnVjdCBrdm1feDg2X29wcyB7CiAKIAl2b2lkICgqZmx1c2hf dGxiX2FsbCkoc3RydWN0IGt2bV92Y3B1ICp2Y3B1KTsKIAl2b2lkICgqZmx1c2hfdGxiX2N1cnJl bnQpKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSk7CisjaWYgSVNfRU5BQkxFRChDT05GSUdfSFlQRVJW KQogCWludCAgKCpmbHVzaF9yZW1vdGVfdGxicykoc3RydWN0IGt2bSAqa3ZtKTsKIAlpbnQgICgq Zmx1c2hfcmVtb3RlX3RsYnNfcmFuZ2UpKHN0cnVjdCBrdm0gKmt2bSwgZ2ZuX3QgZ2ZuLAogCQkJ CQlnZm5fdCBucl9wYWdlcyk7CisjZW5kaWYKIAogCS8qCiAJICogRmx1c2ggYW55IFRMQiBlbnRy aWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ2l2ZW4gR1ZBLgpAQCAtMTgxNCw2ICsxODE2LDcgQEAg c3RhdGljIGlubGluZSBzdHJ1Y3Qga3ZtICprdm1fYXJjaF9hbGxvY192bSh2b2lkKQogI2RlZmlu ZSBfX0tWTV9IQVZFX0FSQ0hfVk1fRlJFRQogdm9pZCBrdm1fYXJjaF9mcmVlX3ZtKHN0cnVjdCBr dm0gKmt2bSk7CiAKKyNpZiBJU19FTkFCTEVEKENPTkZJR19IWVBFUlYpCiAjZGVmaW5lIF9fS1ZN X0hBVkVfQVJDSF9GTFVTSF9SRU1PVEVfVExCCiBzdGF0aWMgaW5saW5lIGludCBrdm1fYXJjaF9m bHVzaF9yZW1vdGVfdGxiKHN0cnVjdCBrdm0gKmt2bSkKIHsKQEAgLTE4MjMsNiArMTgyNiw3IEBA IHN0YXRpYyBpbmxpbmUgaW50IGt2bV9hcmNoX2ZsdXNoX3JlbW90ZV90bGIoc3RydWN0IGt2bSAq a3ZtKQogCWVsc2UKIAkJcmV0dXJuIC1FTk9UU1VQUDsKIH0KKyNlbmRpZgogCiAjZGVmaW5lIGt2 bV9hcmNoX3BtaV9pbl9ndWVzdCh2Y3B1KSBcCiAJKCh2Y3B1KSAmJiAodmNwdSktPmFyY2guaGFu ZGxpbmdfaW50cl9mcm9tX2d1ZXN0KQpkaWZmIC0tZ2l0IGEvYXJjaC94ODYva3ZtL21tdS9tbXUu YyBiL2FyY2gveDg2L2t2bS9tbXUvbW11LmMKaW5kZXggOWU0Y2Q4YjRhMjAyLi4wMTg5ZGZlY2Nl MWYgMTAwNjQ0Ci0tLSBhL2FyY2gveDg2L2t2bS9tbXUvbW11LmMKKysrIGIvYXJjaC94ODYva3Zt L21tdS9tbXUuYwpAQCAtMjcxLDE4ICsyNzEsMjQgQEAgc3RhdGljIGlubGluZSB1bnNpZ25lZCBs b25nIGt2bV9tbXVfZ2V0X2d1ZXN0X3BnZChzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsCiAKIHN0YXRp YyBpbmxpbmUgYm9vbCBrdm1fYXZhaWxhYmxlX2ZsdXNoX3JlbW90ZV90bGJzX3JhbmdlKHZvaWQp CiB7CisjaWYgSVNfRU5BQkxFRChDT05GSUdfSFlQRVJWKQogCXJldHVybiBrdm1feDg2X29wcy5m bHVzaF9yZW1vdGVfdGxic19yYW5nZTsKKyNlbHNlCisJcmV0dXJuIGZhbHNlOworI2VuZGlmCiB9 CiAKIHZvaWQga3ZtX2ZsdXNoX3JlbW90ZV90bGJzX3JhbmdlKHN0cnVjdCBrdm0gKmt2bSwgZ2Zu X3Qgc3RhcnRfZ2ZuLAogCQkJCSBnZm5fdCBucl9wYWdlcykKIHsKKyNpZiBJU19FTkFCTEVEKENP TkZJR19IWVBFUlYpCiAJaW50IHJldCA9IC1FT1BOT1RTVVBQOwogCiAJaWYgKGt2bV94ODZfb3Bz LmZsdXNoX3JlbW90ZV90bGJzX3JhbmdlKQogCQlyZXQgPSBzdGF0aWNfY2FsbChrdm1feDg2X2Zs dXNoX3JlbW90ZV90bGJzX3JhbmdlKShrdm0sIHN0YXJ0X2dmbiwKIAkJCQkJCQkJICAgbnJfcGFn ZXMpOwogCWlmIChyZXQpCisjZW5kaWYKIAkJa3ZtX2ZsdXNoX3JlbW90ZV90bGJzKGt2bSk7CiB9 CiAKCmJhc2UtY29tbWl0OiBiYzllNjg4MjAyNzRjMDI1ODQwZDMwNTZkNjNmOTM4ZDc0Y2EzNWJi Ci0tIAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmxp bnV4LXJpc2N2IG1haWxpbmcgbGlzdApsaW51eC1yaXNjdkBsaXN0cy5pbmZyYWRlYWQub3JnCmh0 dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtcmlzY3YK 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 2FC2FC001B0 for ; Thu, 10 Aug 2023 23:05:15 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Cc:To:From:Subject:Message-ID: References:Mime-Version:In-Reply-To:Date:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Owner; bh=06FVTLGyWgMxeR/A0XwEdtRZtwybnGNMh+w4cjNPIv8=; b=2t1pXaTzv+YRW1ZeekrVNBh/2T 9yXgd2u1mYyb2qfZJlsmXsg1vRFGmpzsd4QCkloH6gQ7zZpNBdtg8z3ecvW5afuTAmEXFZQyBHftl 4R6oGq9Us4lX4yOG6sfSLMxbYSiTJa+ovp6mrSixbES5JZn3u/0Z0hjOOfg1ux9cFg/lC2zGBFBIh cUIvjeElA5c95ZSv4nFg616lvNcOWYnf3KvBcLjiuyJAxJsRnAhZkhSNq873BkZbsG/P1cDsMrIzm UvufFh8hkd177E9GUN0g2Qrow1+76d7GvKdT/Ju7WXtqOd8Q9T2uYJozFkOG6nff5zt1/1yMACk7f MmMpedFw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1qUEhw-008sl5-0j; Thu, 10 Aug 2023 23:04:44 +0000 Received: from mail-pg1-x54a.google.com ([2607:f8b0:4864:20::54a]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1qUEht-008sjc-0b for linux-arm-kernel@lists.infradead.org; Thu, 10 Aug 2023 23:04:42 +0000 Received: by mail-pg1-x54a.google.com with SMTP id 41be03b00d2f7-56357814339so1828655a12.3 for ; Thu, 10 Aug 2023 16:04:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20221208; t=1691708679; x=1692313479; h=content-transfer-encoding:cc:to:from:subject:message-id:references :mime-version:in-reply-to:date:from:to:cc:subject:date:message-id :reply-to; bh=A2HZ014dOId2hDwWOJ0bOX1N/o8JyjLLT0vxMFHcIcY=; b=zqOmZeBt8A5vjDuDwTJVhKh+bNGRe0VjF6JK/9WevOGuyks4aQUZjmMGT5jewTOPGO QNNXbfaZjRGIDjJbXqGA5uvVKLbd540bLxINUf9bbP2sR/lzKTDuuSAu9UifxFDBeqgw 8ZCiTzCGbRSUDsV75zN5fg0b0bdDHBltXflB0Y1pDN9A5qroN68wOB8helk8tdcXtg/S q88I+xcuk/1Hru4Xlm8DyP4ZA0D6FgWJclfTevtUclAlc0FNNmY9CKGjRd5rB8k2w2Km rwPhsysDgjBGkQFjFRsB8HVLPOPutaEu3ax6kOraJ9EBeew1A6TDf7gnL772qKiuaqJg g37A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1691708679; x=1692313479; h=content-transfer-encoding:cc:to:from:subject:message-id:references :mime-version:in-reply-to:date:x-gm-message-state:from:to:cc:subject :date:message-id:reply-to; bh=A2HZ014dOId2hDwWOJ0bOX1N/o8JyjLLT0vxMFHcIcY=; b=SluOypr0J8CQP85Sza5B2sbKJQr1QItsa3pzIxqGCVRfgry5H/+oNyigwPOkaalezp n31LDxeNghbsqHl/DJM1qsW5BXD9F1JgWGIKZNK/OmyzMPhDhp+5IqtXe8PZ+3fjW6ee 3rnp/gqy913BW5TRd8GDCROvEDeKkPFbAlA+OSwN5wk2KTqvf9sQ2qmGqVDGLPW4YwS/ h0rBPULLQpJRcjPK+QJWoYHlCsxCzddvUGQRZsXVQPLyUnw4p5fbmhDCT/QdcjsN8F7q NrbYirK2nmJzi4vEskvdxgb+ZT3ZRsSVwE9TmTeIznp37Yj3C0MpCSE/W5esuCTkT0UC Mhlg== X-Gm-Message-State: AOJu0YxiLMy+aVtcOR+3c3XYGJGHi0mEVkLC6LZ4Qsshbf5sUU17IND+ CytxGodD/uIiMUPcZVrS7F9oZYM8lkg= X-Google-Smtp-Source: AGHT+IEllgdOFrNBSktZ3B9czod0DT40RFdbG9IKB+P9/wA8Lbl3UGUkI/mcLGmHPzlm/kyI0BgShEUaX90= X-Received: from zagreus.c.googlers.com ([fda3:e722:ac3:cc00:7f:e700:c0a8:5c37]) (user=seanjc job=sendgmr) by 2002:a63:7e10:0:b0:563:e825:7f3a with SMTP id z16-20020a637e10000000b00563e8257f3amr14811pgc.11.1691708678622; Thu, 10 Aug 2023 16:04:38 -0700 (PDT) Date: Thu, 10 Aug 2023 16:04:37 -0700 In-Reply-To: Mime-Version: 1.0 References: <20230808231330.3855936-1-rananta@google.com> <20230808231330.3855936-3-rananta@google.com> <30e45ef3-309a-63de-e085-be1645c1be79@redhat.com> Message-ID: Subject: Re: [PATCH v8 02/14] KVM: Declare kvm_arch_flush_remote_tlbs() globally From: Sean Christopherson To: Raghavendra Rao Ananta Cc: Shaoqin Huang , Gavin Shan , Oliver Upton , Marc Zyngier , James Morse , Suzuki K Poulose , Paolo Bonzini , Huacai Chen , Zenghui Yu , Anup Patel , Atish Patra , Jing Zhang , Reiji Watanabe , Colton Lewis , David Matlack , Fuad Tabba , linux-arm-kernel@lists.infradead.org, kvmarm@lists.linux.dev, linux-mips@vger.kernel.org, kvm-riscv@lists.infradead.org, linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org, kvm@vger.kernel.org X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230810_160441_228968_5327DA08 X-CRM114-Status: GOOD ( 33.89 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org T24gVGh1LCBBdWcgMTAsIDIwMjMsIFJhZ2hhdmVuZHJhIFJhbyBBbmFudGEgd3JvdGU6Cj4gT24g VGh1LCBBdWcgMTAsIDIwMjMgYXQgMzoyMOKAr1BNIFNlYW4gQ2hyaXN0b3BoZXJzb24gPHNlYW5q Y0Bnb29nbGUuY29tPiB3cm90ZToKPiA+IE9uIFRodSwgQXVnIDEwLCAyMDIzLCBSYWdoYXZlbmRy YSBSYW8gQW5hbnRhIHdyb3RlOgo+ID4gPiBBZnRlciBkb2luZyBzb21lIGV4cGVyaW1lbnRzLCBJ IHRoaW5rIGl0IHdvcmtzIGJlY2F1c2Ugb2YgdGhlIG9yZGVyIGluCj4gPiA+IHdoaWNoIHRoZSBp bmxpbmUtZGVmaW5pdGlvbiBhbmQgdGhlIGRlY2xhcmF0aW9uIGFyZSBsYWlkIG91dC4gSWYgdGhl Cj4gPiA+ICdpbmxpbmUnIHBhcnQgb2YgdGhlIGZ1bmN0aW9uIGNvbWVzIGZpcnN0IGFuZCB0aGVu IHRoZSBkZWNsYXJhdGlvbiwgd2UKPiA+ID4gZG9uJ3Qgc2VlIGFueSBlcnJvci4gSG93ZXZlciBp ZiB0aGUgcG9zaXRpb25zIHdlcmUgcmV2ZXJzZWQsIHdlIHdvdWxkCj4gPiA+IHNlZSBhbiBlcnJv ci4gKEknbSBub3Qgc3VyZSB3aGF0IHRoZSB0ZWNobmljYWwgcmVhc29uIGZvciB0aGlzIGlzKS4K PiA+ID4KPiA+ID4gSnVzdCB0byBiZSBzYWZlLCBJIGNhbiBtb3ZlIHRoZSBkZWZpbml0aW9uIHRv IGFyY2gveDg2L2t2bS9tbXUvbW11LmMKPiA+ID4gYXMgYSBub24taW5saW5lIGZ1bmN0aW9uLgo+ ID4KPiA+IE5vIG5lZWQsIGFzbS9rdm1faG9zdC5oIF9tdXN0XyBiZSBpbmNsdWRlZCBiZWZvcmUg dGhlIGRlY2xhcmF0aW9uLCBvdGhlcndpc2UgdGhlCj4gPiBkZWNsYXJhdGlvbiB3b3VsZG4ndCBi ZSBtYWRlIGJlY2F1c2UgX19LVk1fSEFWRV9BUkNIX0ZMVVNIX1JFTU9URV9UTEJTIHdvdWxkbid0 Cj4gPiBiZSBkZWZpbmVkLiAgSS5lLiB3ZSB3b24ndCBydW4gaW50byBpc3N1ZXMgd2hlcmUgdGhl IG5vbi1zdGF0aWMgZGVjbGFyYXRpb24gY29tZXMKPiA+IGJlZm9yZSB0aGUgc3RhdGljIGlubGlu ZSBkZWZpbml0aW9uLgo+ID4KPiA+IEM5OSBleHBsaWNpdGx5IGNvdmVycyB0aGlzIGNhc2U6Cj4g Pgo+ID4gICA2LjIuMiBMaW5rYWdlcyBvZiBpZGVudGlmaWVycwo+ID4KPiA+ICAgLi4uCj4gPgo+ ID4gICBJZiB0aGUgZGVjbGFyYXRpb24gb2YgYSBmaWxlIHNjb3BlIGlkZW50aWZpZXIgZm9yIGFu IG9iamVjdCBvciBhIGZ1bmN0aW9uIGNvbnRhaW5zIHRoZSBzdG9yYWdlLQo+ID4gICBjbGFzcyBz cGVjaWZpZXIgc3RhdGljLCB0aGUgaWRlbnRpZmllciBoYXMgaW50ZXJuYWwgbGlua2FnZS4KPiA+ Cj4gPiAgIEZvciBhbiBpZGVudGlmaWVyIGRlY2xhcmVkIHdpdGggdGhlIHN0b3JhZ2UtY2xhc3Mg c3BlY2lmaWVyIGV4dGVybiBpbiBhIHNjb3BlIGluIHdoaWNoIGEKPiA+ICAgcHJpb3IgZGVjbGFy YXRpb24gb2YgdGhhdCBpZGVudGlmaWVyIGlzIHZpc2libGUgaWYgdGhlIHByaW9yIGRlY2xhcmF0 aW9uIHNwZWNpZmllcyBpbnRlcm5hbCBvcgo+ID4gICBleHRlcm5hbCBsaW5rYWdlLCB0aGUgbGlu a2FnZSBvZiB0aGUgaWRlbnRpZmllciBhdCB0aGUgbGF0ZXIgZGVjbGFyYXRpb24gaXMgdGhlIHNh bWUgYXMgdGhlCj4gPiAgIGxpbmthZ2Ugc3BlY2lmaWVkIGF0IHRoZSBwcmlvciBkZWNsYXJhdGlv bi4gSWYgbm8gcHJpb3IgZGVjbGFyYXRpb24gaXMgdmlzaWJsZSwgb3IgaWYgdGhlIHByaW9yCj4g PiAgIGRlY2xhcmF0aW9uIHNwZWNpZmllcyBubyBsaW5rYWdlLCB0aGVuIHRoZSBpZGVudGlmaWVy IGhhcyBleHRlcm5hbCBsaW5rYWdlLgo+ID4KPiA+IEluIHNob3J0LCBiZWNhdXNlIHRoZSAic3Rh dGljIGlubGluZSIgZGVjbGFyZWQgaW50ZXJuYWwgbGlua2FnZSBmaXJzdCwgaXQgd2lucy4KPiBU aGFua3MgZm9yIHNoYXJpbmcgdGhpcyEgSSBjYW4ga2VlcCB0aGUgJ3N0YXRpYyBpbmxpbmUnIGRl ZmluaXRpb24gYXMKPiBpcyB0aGVuLiBIb3dldmVyLCBzaW5jZSBhIGxhdGVyIHBhdGNoIChwYXRj aC0wNS8xNCkgZGVmaW5lcwo+IGt2bV9hcmNoX2ZsdXNoX3JlbW90ZV90bGJzX3JhbmdlKCkgaW4g YXJjaC94ODYva3ZtL21tdS9tbXUuYywgZG8geW91Cj4gdGhpbmsgd2UgY2FuIG1vdmUgdGhpcyBk ZWZpbml0aW9uIHRvIHRoZSAuYyBmaWxlIGFzIHdlbGwgZm9yCj4gY29uc2lzdGVuY3k/CgpXZSAi Y2FuIiwgYnV0IEkgZG9uJ3Qgc2VlIGFueSByZWFzb24gdG8gZG8gc28uICBUcnlpbmcgdG8gbWFr ZSBoZWxwZXJzIGNvbnNpc3RlbnRseQppbmxpbmUgb3Igbm90IGlzIHVzdWFsbHkgYSBmb29scyBl cnJhbmQuICBBbmQgaW4gdGhpcyBjYXNlLCBJJ2QgYWN0dWFsbHkgcmF0aGVyIGdvCnRoZSBvcHBv c2l0ZSBkaXJlY3Rpb24gYW5kIG1ha2UgdGhlIHJhbmdlIHZhcmlhbnQgYW4gaW5saW5lLgoKSGEh ICBBbmQgSSBjYW4ganVzdGlmeSB0aGF0IHdpdGggbWluaW1hbCBlZmZvcnQuICBUaGUgYmVsb3cg bWFrZXMgdGhlIGhlbHBlciBhCnN0cmFpZ2h0IHBhc3N0aHJvdWdoIGZvciBDT05GSUdfSFlQRVJW PW4gYnVpbGRzLCBhdCB3aGljaCBwb2ludCBJIHRoaW5rIGl0IG1ha2VzCnNlbnNlIGZvciBpdCB0 byBiZSBpbmxpbmUuCgpJZiBpdCB3b24ndCBzbG93IHlvdXIgc2VyaWVzIGRvd24gZXZlbiBtb3Jl LCBhbnkgb2JqZWN0aW9uIHRvIHNsaWRpbmcgdGhlIGJlbG93CnBhdGNoIGluIHNvbWV3aGVyZSBi ZWZvcmUgcGF0Y2ggNT8gIEFuZCB0aGVuIGFkZCBhIHBhdGNoIHRvIGlubGluZSB0aGUgcmFuZ2Ut YmFzZWQKaGVscGVyPwoKRGlzY2xhaW1lcjogY29tcGlsZSB0ZXN0ZWQgb25seS4KCi0tLQpGcm9t OiBTZWFuIENocmlzdG9waGVyc29uIDxzZWFuamNAZ29vZ2xlLmNvbT4KRGF0ZTogVGh1LCAxMCBB dWcgMjAyMyAxNTo1ODo1MyAtMDcwMApTdWJqZWN0OiBbUEFUQ0hdIEtWTTogeDg2L21tdTogRGVj bGFyZSBmbHVzaF9yZW1vdGVfdGxic3tfcmFuZ2V9KCkgaG9va3MgaWZmCiBIWVBFUlYhPW4KCkRl Y2xhcmUgdGhlIGt2bV94ODZfb3BzIGhvb2tzIHVzZWQgdG8gd2lyZSB1cCBwYXJhdmlydCBUTEIg Zmx1c2hlcyB3aGVuCnJ1bm5pbmcgdW5kZXIgSHlwZXItViBpZiBhbmQgb25seSBpZiBDT05GSUdf SFlQRVJWIT1uLiAgV3JhcHBpbmcgeWV0IG1vcmUKY29kZSB3aXRoIElTX0VOQUJMRUQoQ09ORklH X0hZUEVSVikgZWxpbWluYXRlcyBhIGhhbmRmdWwgb2YgY29uZGl0aW9uYWwKYnJhbmNoZXMsIGFu ZCBtYWtlcyBpdCBzdXBlciBvYnZpb3VzIHdoeSB0aGUgaG9va3MgKm1pZ2h0KiBiZSB2YWxpZC4K ClNpZ25lZC1vZmYtYnk6IFNlYW4gQ2hyaXN0b3BoZXJzb24gPHNlYW5qY0Bnb29nbGUuY29tPgot LS0KIGFyY2gveDg2L2luY2x1ZGUvYXNtL2t2bS14ODYtb3BzLmggfCAyICsrCiBhcmNoL3g4Ni9p bmNsdWRlL2FzbS9rdm1faG9zdC5oICAgIHwgNCArKysrCiBhcmNoL3g4Ni9rdm0vbW11L21tdS5j ICAgICAgICAgICAgIHwgNiArKysrKysKIDMgZmlsZXMgY2hhbmdlZCwgMTIgaW5zZXJ0aW9ucygr KQoKZGlmZiAtLWdpdCBhL2FyY2gveDg2L2luY2x1ZGUvYXNtL2t2bS14ODYtb3BzLmggYi9hcmNo L3g4Ni9pbmNsdWRlL2FzbS9rdm0teDg2LW9wcy5oCmluZGV4IDEzYmMyMTJjZDRiYy4uNmJjMWFi MDYyN2I3IDEwMDY0NAotLS0gYS9hcmNoL3g4Ni9pbmNsdWRlL2FzbS9rdm0teDg2LW9wcy5oCisr KyBiL2FyY2gveDg2L2luY2x1ZGUvYXNtL2t2bS14ODYtb3BzLmgKQEAgLTU0LDggKzU0LDEwIEBA IEtWTV9YODZfT1Aoc2V0X3JmbGFncykKIEtWTV9YODZfT1AoZ2V0X2lmX2ZsYWcpCiBLVk1fWDg2 X09QKGZsdXNoX3RsYl9hbGwpCiBLVk1fWDg2X09QKGZsdXNoX3RsYl9jdXJyZW50KQorI2lmIElT X0VOQUJMRUQoQ09ORklHX0hZUEVSVikKIEtWTV9YODZfT1BfT1BUSU9OQUwoZmx1c2hfcmVtb3Rl X3RsYnMpCiBLVk1fWDg2X09QX09QVElPTkFMKGZsdXNoX3JlbW90ZV90bGJzX3JhbmdlKQorI2Vu ZGlmCiBLVk1fWDg2X09QKGZsdXNoX3RsYl9ndmEpCiBLVk1fWDg2X09QKGZsdXNoX3RsYl9ndWVz dCkKIEtWTV9YODZfT1AodmNwdV9wcmVfcnVuKQpkaWZmIC0tZ2l0IGEvYXJjaC94ODYvaW5jbHVk ZS9hc20va3ZtX2hvc3QuaCBiL2FyY2gveDg2L2luY2x1ZGUvYXNtL2t2bV9ob3N0LmgKaW5kZXgg NjBkNDMwYjQ2NTBmLi4wNGZjODAxMTJkZmUgMTAwNjQ0Ci0tLSBhL2FyY2gveDg2L2luY2x1ZGUv YXNtL2t2bV9ob3N0LmgKKysrIGIvYXJjaC94ODYvaW5jbHVkZS9hc20va3ZtX2hvc3QuaApAQCAt MTYwNCw5ICsxNjA0LDExIEBAIHN0cnVjdCBrdm1feDg2X29wcyB7CiAKIAl2b2lkICgqZmx1c2hf dGxiX2FsbCkoc3RydWN0IGt2bV92Y3B1ICp2Y3B1KTsKIAl2b2lkICgqZmx1c2hfdGxiX2N1cnJl bnQpKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSk7CisjaWYgSVNfRU5BQkxFRChDT05GSUdfSFlQRVJW KQogCWludCAgKCpmbHVzaF9yZW1vdGVfdGxicykoc3RydWN0IGt2bSAqa3ZtKTsKIAlpbnQgICgq Zmx1c2hfcmVtb3RlX3RsYnNfcmFuZ2UpKHN0cnVjdCBrdm0gKmt2bSwgZ2ZuX3QgZ2ZuLAogCQkJ CQlnZm5fdCBucl9wYWdlcyk7CisjZW5kaWYKIAogCS8qCiAJICogRmx1c2ggYW55IFRMQiBlbnRy aWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ2l2ZW4gR1ZBLgpAQCAtMTgxNCw2ICsxODE2LDcgQEAg c3RhdGljIGlubGluZSBzdHJ1Y3Qga3ZtICprdm1fYXJjaF9hbGxvY192bSh2b2lkKQogI2RlZmlu ZSBfX0tWTV9IQVZFX0FSQ0hfVk1fRlJFRQogdm9pZCBrdm1fYXJjaF9mcmVlX3ZtKHN0cnVjdCBr dm0gKmt2bSk7CiAKKyNpZiBJU19FTkFCTEVEKENPTkZJR19IWVBFUlYpCiAjZGVmaW5lIF9fS1ZN X0hBVkVfQVJDSF9GTFVTSF9SRU1PVEVfVExCCiBzdGF0aWMgaW5saW5lIGludCBrdm1fYXJjaF9m bHVzaF9yZW1vdGVfdGxiKHN0cnVjdCBrdm0gKmt2bSkKIHsKQEAgLTE4MjMsNiArMTgyNiw3IEBA IHN0YXRpYyBpbmxpbmUgaW50IGt2bV9hcmNoX2ZsdXNoX3JlbW90ZV90bGIoc3RydWN0IGt2bSAq a3ZtKQogCWVsc2UKIAkJcmV0dXJuIC1FTk9UU1VQUDsKIH0KKyNlbmRpZgogCiAjZGVmaW5lIGt2 bV9hcmNoX3BtaV9pbl9ndWVzdCh2Y3B1KSBcCiAJKCh2Y3B1KSAmJiAodmNwdSktPmFyY2guaGFu ZGxpbmdfaW50cl9mcm9tX2d1ZXN0KQpkaWZmIC0tZ2l0IGEvYXJjaC94ODYva3ZtL21tdS9tbXUu YyBiL2FyY2gveDg2L2t2bS9tbXUvbW11LmMKaW5kZXggOWU0Y2Q4YjRhMjAyLi4wMTg5ZGZlY2Nl MWYgMTAwNjQ0Ci0tLSBhL2FyY2gveDg2L2t2bS9tbXUvbW11LmMKKysrIGIvYXJjaC94ODYva3Zt L21tdS9tbXUuYwpAQCAtMjcxLDE4ICsyNzEsMjQgQEAgc3RhdGljIGlubGluZSB1bnNpZ25lZCBs b25nIGt2bV9tbXVfZ2V0X2d1ZXN0X3BnZChzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsCiAKIHN0YXRp YyBpbmxpbmUgYm9vbCBrdm1fYXZhaWxhYmxlX2ZsdXNoX3JlbW90ZV90bGJzX3JhbmdlKHZvaWQp CiB7CisjaWYgSVNfRU5BQkxFRChDT05GSUdfSFlQRVJWKQogCXJldHVybiBrdm1feDg2X29wcy5m bHVzaF9yZW1vdGVfdGxic19yYW5nZTsKKyNlbHNlCisJcmV0dXJuIGZhbHNlOworI2VuZGlmCiB9 CiAKIHZvaWQga3ZtX2ZsdXNoX3JlbW90ZV90bGJzX3JhbmdlKHN0cnVjdCBrdm0gKmt2bSwgZ2Zu X3Qgc3RhcnRfZ2ZuLAogCQkJCSBnZm5fdCBucl9wYWdlcykKIHsKKyNpZiBJU19FTkFCTEVEKENP TkZJR19IWVBFUlYpCiAJaW50IHJldCA9IC1FT1BOT1RTVVBQOwogCiAJaWYgKGt2bV94ODZfb3Bz LmZsdXNoX3JlbW90ZV90bGJzX3JhbmdlKQogCQlyZXQgPSBzdGF0aWNfY2FsbChrdm1feDg2X2Zs dXNoX3JlbW90ZV90bGJzX3JhbmdlKShrdm0sIHN0YXJ0X2dmbiwKIAkJCQkJCQkJICAgbnJfcGFn ZXMpOwogCWlmIChyZXQpCisjZW5kaWYKIAkJa3ZtX2ZsdXNoX3JlbW90ZV90bGJzKGt2bSk7CiB9 CiAKCmJhc2UtY29tbWl0OiBiYzllNjg4MjAyNzRjMDI1ODQwZDMwNTZkNjNmOTM4ZDc0Y2EzNWJi Ci0tIAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmxp bnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFk ZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4 LWFybS1rZXJuZWwK