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 35D1AC43458 for ; Mon, 6 Jul 2026 21:27:00 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Type:MIME-Version: References:In-Reply-To:Subject:Cc:To:From:Message-ID:Date:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=T9lDsB/+NcYvsgur+jzOVo5SNmXQlABei/7lUjSJfZI=; b=utWqSqyL6aUHafrHkk5+QjiK47 M9s1VG0kk57MS9XiZwjZPD8AyeeHrti3V7aayu9A77n1LdT5vJ+94W8K2twg8GHiLYnj+iJgjY9np jYmbMrx7NWdr3h89ejsqJucmQzbsJEKGCx+Ovm6pStjn+Ki41P0slEEHwpszHAHUjwic6x8RzXP1Q jZhGEtwg/LjbVIll/wNZHEXVqa/zhmCQWQbd04MoXGGZ3+WOCQTe61UT0npc0uXEZIEe28PKMh8DZ I3tbANLWkKWEJIn2AFZkx2YHe+M0RKy0BXP+Ai+6zbHs2gLpwlRd9anbtpt26127V/BPTbVmzGnN8 m4r8QBsQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1wgqq4-0000000DdDN-300c; Mon, 06 Jul 2026 21:26:52 +0000 Received: from sea.source.kernel.org ([2600:3c0a:e001:78e:0:1991:8:25]) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1wgqq3-0000000DdDA-1mk6 for linux-arm-kernel@lists.infradead.org; Mon, 06 Jul 2026 21:26:51 +0000 Received: from smtp.kernel.org (quasi.space.kernel.org [100.103.45.18]) by sea.source.kernel.org (Postfix) with ESMTP id CECB041749; Mon, 6 Jul 2026 21:26:50 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id ACFFC1F000E9; Mon, 6 Jul 2026 21:26:50 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1783373210; bh=T9lDsB/+NcYvsgur+jzOVo5SNmXQlABei/7lUjSJfZI=; h=Date:From:To:Cc:Subject:In-Reply-To:References; b=je6eqx5rUBP2UGCChKvezCJTL51nWqAmpUjT9xlKJI+oSC+RKx6pgAaMNVkuB7qc9 KTpP8JMIJZoG9DkSHlZoaP6bOwMx5AZTpAbT2P7pTpwZguH8e0NCUU2VQZo5lijMxi DpoCH1iCRve2Gy1ot1kYaOGm5xcOZkzfIhkIb+YVDCtIEutXhbOAbp+i/u/eZ2IX+0 FnWSPCTwm8pwD6uTa1BCDwevfQJ79kJtt1UkqItVpJ4PjVil6D9JNAqExLbys1F6vs KW8NLTtKCppJNXy23XDymbrKnUR9k8QNvU3/DDvAj4jdzIULiZt5QBOUkLOuzPs9P8 FPidM6Zafwerw== Received: from sofa.misterjones.org ([185.219.108.64] helo=lobster-girl.misterjones.org) by disco-boy.misterjones.org with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1wgqq0-000000028nF-33rS; Mon, 06 Jul 2026 21:26:48 +0000 Date: Mon, 06 Jul 2026 22:28:37 +0100 Message-ID: <877bn77qpm.wl-maz@kernel.org> From: Marc Zyngier To: Steffen Eiden Cc: kvm@vger.kernel.org, kvmarm@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-s390@vger.kernel.org, Alexander Gordeev , Andreas Grapentin , Arnd Bergmann , Catalin Marinas , Christian Borntraeger , Claudio Imbrenda , David Hildenbrand , Friedrich Welter , Gautam Gala , Hariharan Mari , Heiko Carstens , Hendrik Brueckner , Ilya Leoshkevich , Janosch Frank , Joey Gouly , Nico Boehr , Nina Schoetterl-Glausch , Oliver Upton , Paolo Bonzini , Suzuki K Poulose , Sven Schnelle , Ulrich Weigand , Vasily Gorbik , Will Deacon , Zenghui Yu Subject: Re: [PATCH v4 08/27] KVM: arm64: Prepare sharing arm64 code with s390 In-Reply-To: <20260706085229.979525-9-seiden@linux.ibm.com> References: <20260706085229.979525-1-seiden@linux.ibm.com> <20260706085229.979525-9-seiden@linux.ibm.com> User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI-EPG/1.14.7 (Harue) FLIM-LB/1.14.9 (=?UTF-8?B?R29qxY0=?=) APEL-LB/10.8 EasyPG/1.0.0 Emacs/30.1 (aarch64-unknown-linux-gnu) MULE/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset=US-ASCII X-SA-Exim-Connect-IP: 185.219.108.64 X-SA-Exim-Rcpt-To: seiden@linux.ibm.com, kvm@vger.kernel.org, kvmarm@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-s390@vger.kernel.org, agordeev@linux.ibm.com, gra@linux.ibm.com, arnd@arndb.de, catalin.marinas@arm.com, borntraeger@linux.ibm.com, imbrenda@linux.ibm.com, david@kernel.org, fritz@linux.ibm.com, ggala@linux.ibm.com, hari55@linux.ibm.com, hca@linux.ibm.com, brueckner@linux.ibm.com, iii@linux.ibm.com, frankja@linux.ibm.com, joey.gouly@arm.com, nrb@linux.ibm.com, oss@nina.schoetterlglausch.eu, oupton@kernel.org, pbonzini@redhat.com, suzuki.poulose@arm.com, svens@linux.ibm.com, Ulrich.Weigand@de.ibm.com, gor@linux.ibm.com, will@kernel.org, yuzenghui@huawei.com X-SA-Exim-Mail-From: maz@kernel.org X-SA-Exim-Scanned: No (on disco-boy.misterjones.org); SAEximRunCond expanded to false 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: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On Mon, 06 Jul 2026 09:52:08 +0100, Steffen Eiden wrote: > > Mark functions that s390 can use to implement arm on s390 as shared > functions. > > No functional change. > > Signed-off-by: Steffen Eiden > --- > arch/arm64/kvm/arm.c | 3 +++ > arch/arm64/kvm/guest.c | 3 +++ > arch/arm64/kvm/handle_exit.c | 6 ++++++ > arch/arm64/kvm/mmio.c | 14 ++++++++++++++ > arch/arm64/kvm/reset.c | 3 +++ > 5 files changed, 29 insertions(+) > > diff --git a/arch/arm64/kvm/arm.c b/arch/arm64/kvm/arm.c > index 50adfff75be8..c992308b2dce 100644 > --- a/arch/arm64/kvm/arm.c > +++ b/arch/arm64/kvm/arm.c > @@ -1580,6 +1580,7 @@ static unsigned long system_supported_vcpu_features(void) > return features; > } > > +#ifdef ARM64_S390_COMMON > static int kvm_vcpu_init_check_features(struct kvm_vcpu *vcpu, > const struct kvm_vcpu_init *init) > { > @@ -1628,6 +1629,8 @@ static bool kvm_vcpu_init_changed(struct kvm_vcpu *vcpu, > KVM_VCPU_MAX_FEATURES); > } > > +#endif /* ARM64_S390_COMMON */ > + > static int kvm_setup_vcpu(struct kvm_vcpu *vcpu) > { > struct kvm *kvm = vcpu->kvm; > diff --git a/arch/arm64/kvm/guest.c b/arch/arm64/kvm/guest.c > index b01d6622b872..5a202cfd27bc 100644 > --- a/arch/arm64/kvm/guest.c > +++ b/arch/arm64/kvm/guest.c > @@ -543,6 +543,7 @@ int kvm_arch_vcpu_ioctl_set_regs(struct kvm_vcpu *vcpu, struct kvm_regs *regs) > return -EINVAL; > } > > +#ifdef ARM64_S390_COMMON > static int copy_core_reg_indices(const struct kvm_vcpu *vcpu, > u64 __user *uindices) > { > @@ -591,6 +592,8 @@ static unsigned long num_core_regs(const struct kvm_vcpu *vcpu) > return copy_core_reg_indices(vcpu, NULL); > } > > +#endif /* ARM64_S390_COMMON */ > + > static unsigned long num_sve_regs(const struct kvm_vcpu *vcpu) > { > const unsigned int slices = vcpu_sve_slices(vcpu); > diff --git a/arch/arm64/kvm/handle_exit.c b/arch/arm64/kvm/handle_exit.c > index 54aedf93c78b..d511af145ee6 100644 > --- a/arch/arm64/kvm/handle_exit.c > +++ b/arch/arm64/kvm/handle_exit.c > @@ -213,6 +213,7 @@ static int kvm_handle_guest_debug(struct kvm_vcpu *vcpu) > return 0; > } > > +#ifdef ARM64_S390_COMMON > static int kvm_handle_unknown_ec(struct kvm_vcpu *vcpu) > { > u64 esr = kvm_vcpu_get_esr(vcpu); > @@ -224,6 +225,8 @@ static int kvm_handle_unknown_ec(struct kvm_vcpu *vcpu) > return 1; > } > > +#endif /* ARM64_S390_COMMON */ > + > /* > * Guest access to SVE registers should be routed to this handler only > * when the system doesn't support SVE. > @@ -404,6 +407,7 @@ static exit_handle_fn arm_exit_handlers[] = { > [ESR_ELx_EC_GCS] = kvm_handle_gcs, > }; > > +#ifdef ARM64_S390_COMMON > static exit_handle_fn kvm_get_exit_handler(struct kvm_vcpu *vcpu) > { > u64 esr = kvm_vcpu_get_esr(vcpu); > @@ -439,6 +443,8 @@ static int handle_trap_exceptions(struct kvm_vcpu *vcpu) > return handled; > } > > +#endif /* ARM64_S390_COMMON */ > + > /* > * Return > 0 to return to guest, < 0 on error, 0 (and set exit_reason) on > * proper exit to userspace. > diff --git a/arch/arm64/kvm/mmio.c b/arch/arm64/kvm/mmio.c > index e2285ed8c91d..876d56dd5b64 100644 > --- a/arch/arm64/kvm/mmio.c > +++ b/arch/arm64/kvm/mmio.c > @@ -10,6 +10,7 @@ > > #include "trace.h" > > +#ifdef ARM64_S390_COMMON > void kvm_mmio_write_buf(void *buf, unsigned int len, unsigned long data) > { > void *datap = NULL; > @@ -135,8 +136,11 @@ int kvm_handle_mmio_return(struct kvm_vcpu *vcpu) > if (!kvm_vcpu_dabt_issf(vcpu)) > data = data & 0xffffffff; > > +#endif /* ARM64_S390_COMMON */ > trace_kvm_mmio(KVM_TRACE_MMIO_READ, len, run->mmio.phys_addr, > &data); > + //TODO tracing > +#ifdef ARM64_S390_COMMON Irk. The deal is that you lift full functions, not cherry-pick which lines you want. Just define empty stubs for the trace nonsense, and be done with it. But not this, please! M. -- Jazz isn't dead. It just smells funny.