From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-alma10-1.taild15c8.ts.net [100.103.45.18]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1F8503F8241; Mon, 6 Jul 2026 21:26:50 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=100.103.45.18 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783373212; cv=none; b=MM6V080Q2cW8L3jSjRI1O5O4BOzUctqLa8qvIRCoi6R42Z6D3NavWJMAe30kFFjo1sxcp3JPA2z6GjcHwgdlqkE6QgQBg6FLCWdviwd58IlCDbQpK8KqlNX3u+eWeHq1dmVAhLR36wei00RLfP9oO8572hRSDAvj0oElOSzv19o= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783373212; c=relaxed/simple; bh=VWv2LRjxHkQEh814EbSvCcJKLdk6GxMAU+fgME4WUW8=; h=Date:Message-ID:From:To:Cc:Subject:In-Reply-To:References: MIME-Version:Content-Type; b=m+YvCPbDpWfs6fAz6Io7RkqHsPPLl5ls6oIaXtmZlYBrlrwxCm3EMb32P/KyYzMY5aLP3VLVrnjDDqKz/SHftd4V3EYosEKHDlZ0ZJMrN8rzF62xsirGi2NbLQdRPNSUaw2Vlaq8ptuRFRGUFprQp3RaCLAznnGjo8ruQlANBzA= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=je6eqx5r; arc=none smtp.client-ip=100.103.45.18 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="je6eqx5r" 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) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: 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 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.