* [PATCH 0/3] KVM: s390: arm64: Fixes for arm64 KVM support
@ 2026-11-03 16:37 Andreas Grapentin
2026-11-03 16:37 ` [PATCH 1/3] KVM: s390: arm64: Turn vcpu->arch.pause into a counter Andreas Grapentin
` (3 more replies)
0 siblings, 4 replies; 5+ messages in thread
From: Andreas Grapentin @ 2026-11-03 16:37 UTC (permalink / raw)
To: Steffen Eiden, Marc Zyngier, Christian Borntraeger,
Janosch Frank, Claudio Imbrenda, David Hildenbrand,
Heiko Carstens, Vasily Gorbik, Alexander Gordeev, Sven Schnelle
Cc: kvm, linux-s390, linux-kernel, Andreas Grapentin
Some fixups for the previous series that introduced arm64 KVM support on
s390. Forward-declare enum vcpu_sysreg because we are definitely going
to need that, then make the module naming consistent and iron out an
inconsistency in the definition of vcpu->arch.pause between s390 and
native arm64 KVM.
No functional changes intended on either arm64 or s390.
Signed-off-by: Andreas Grapentin <gra@linux.ibm.com>
---
Andreas Grapentin (2):
KVM: s390: arm64: Declare enum vcpu_sysreg
KVM: s390: arm64: Fix kvm_arm64 module naming consistency
Steffen Eiden (1):
KVM: s390: arm64: Turn vcpu->arch.pause into a counter
arch/s390/include/asm/kvm_host_arm64.h | 8 ++++----
arch/s390/kvm/arm64/Makefile | 12 ++++++------
2 files changed, 10 insertions(+), 10 deletions(-)
---
base-commit: 6628e7d4c6b25c8d18f1345e3a20d21829aae7e4
change-id: 20261103-s390_arm64_kvm_fixups-b285654f214c
Best regards,
--
Andreas Grapentin <gra@linux.ibm.com>
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 1/3] KVM: s390: arm64: Turn vcpu->arch.pause into a counter
2026-11-03 16:37 [PATCH 0/3] KVM: s390: arm64: Fixes for arm64 KVM support Andreas Grapentin
@ 2026-11-03 16:37 ` Andreas Grapentin
2026-11-03 16:37 ` [PATCH 2/3] KVM: s390: arm64: Declare enum vcpu_sysreg Andreas Grapentin
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: Andreas Grapentin @ 2026-11-03 16:37 UTC (permalink / raw)
To: Steffen Eiden, Marc Zyngier, Christian Borntraeger,
Janosch Frank, Claudio Imbrenda, David Hildenbrand,
Heiko Carstens, Vasily Gorbik, Alexander Gordeev, Sven Schnelle
Cc: kvm, linux-s390, linux-kernel, Andreas Grapentin
From: Steffen Eiden <seiden@linux.ibm.com>
The s390 arm64 vcpu struct mirrors arm64's kvm_vcpu_arch. When commit
e64309198eda2 ("KVM: arm64: Turn vcpu->arch.pause into a counter")
changed the type of kvm_vcpu_arch.pause from bool to atomic_t, the merge
into this tree missed the s390 copy, leaving it out of sync.
Nothing on the s390 side accesses vcpu->arch.pause yet, so this has
no functional effect. Align the type to keep the mirror identical to
its arm64 counterpart.
Fixes: e6c329180d1d ("KVM: s390: arm64: Introduce host definitions")
Signed-off-by: Steffen Eiden <seiden@linux.ibm.com>
Signed-off-by: Andreas Grapentin <gra@linux.ibm.com>
---
arch/s390/include/asm/kvm_host_arm64.h | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/arch/s390/include/asm/kvm_host_arm64.h b/arch/s390/include/asm/kvm_host_arm64.h
index 82343e723ebf..a3e40650d75d 100644
--- a/arch/s390/include/asm/kvm_host_arm64.h
+++ b/arch/s390/include/asm/kvm_host_arm64.h
@@ -63,11 +63,10 @@ struct kvm_vcpu_arch {
/*
* Don't run the guest (internal implementation need).
*
- * Contrary to the flags above, this is set/cleared outside of
- * a vcpu context, and thus cannot be mixed with the flags
- * themselves (or the flag accesses need to be made atomic).
+ * Contrary to the flags above, this is updated outside of
+ * a vcpu context, and thus cannot be mixed with the flags.
*/
- bool pause;
+ atomic_t pause;
/* vcpu power state */
struct kvm_mp_state mp_state;
--
2.55.0
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 2/3] KVM: s390: arm64: Declare enum vcpu_sysreg
2026-11-03 16:37 [PATCH 0/3] KVM: s390: arm64: Fixes for arm64 KVM support Andreas Grapentin
2026-11-03 16:37 ` [PATCH 1/3] KVM: s390: arm64: Turn vcpu->arch.pause into a counter Andreas Grapentin
@ 2026-11-03 16:37 ` Andreas Grapentin
2026-11-03 16:37 ` [PATCH 3/3] KVM: s390: arm64: Fix kvm_arm64 module naming consistency Andreas Grapentin
2026-11-03 18:31 ` [PATCH 0/3] KVM: s390: arm64: Fixes for arm64 KVM support Marc Zyngier
3 siblings, 0 replies; 5+ messages in thread
From: Andreas Grapentin @ 2026-11-03 16:37 UTC (permalink / raw)
To: Steffen Eiden, Marc Zyngier, Christian Borntraeger,
Janosch Frank, Claudio Imbrenda, David Hildenbrand,
Heiko Carstens, Vasily Gorbik, Alexander Gordeev, Sven Schnelle
Cc: kvm, linux-s390, linux-kernel, Andreas Grapentin
Forward-declare enum vcpu_sysreg in kvm_host_arm64.h. This should have
been included in the first iteration of the header, since we will need
it to talk about system registers.
Since the definition of enum vcpu_sysreg is not shared yet, and not used
on the s390 side, this should not cause any functional changes.
Fixes: e6c329180d1d ("KVM: s390: arm64: Introduce host definitions")
Signed-off-by: Andreas Grapentin <gra@linux.ibm.com>
---
arch/s390/include/asm/kvm_host_arm64.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/s390/include/asm/kvm_host_arm64.h b/arch/s390/include/asm/kvm_host_arm64.h
index a3e40650d75d..3e69724f17c9 100644
--- a/arch/s390/include/asm/kvm_host_arm64.h
+++ b/arch/s390/include/asm/kvm_host_arm64.h
@@ -8,6 +8,7 @@
#include <asm/debug.h>
#define vcpu_gp_regs(v) ((v)->arch.sae_block.gpr)
+enum vcpu_sysreg;
#include <arm64/kvm_host.h>
#include <arm64/ptrace.h>
--
2.55.0
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 3/3] KVM: s390: arm64: Fix kvm_arm64 module naming consistency
2026-11-03 16:37 [PATCH 0/3] KVM: s390: arm64: Fixes for arm64 KVM support Andreas Grapentin
2026-11-03 16:37 ` [PATCH 1/3] KVM: s390: arm64: Turn vcpu->arch.pause into a counter Andreas Grapentin
2026-11-03 16:37 ` [PATCH 2/3] KVM: s390: arm64: Declare enum vcpu_sysreg Andreas Grapentin
@ 2026-11-03 16:37 ` Andreas Grapentin
2026-11-03 18:31 ` [PATCH 0/3] KVM: s390: arm64: Fixes for arm64 KVM support Marc Zyngier
3 siblings, 0 replies; 5+ messages in thread
From: Andreas Grapentin @ 2026-11-03 16:37 UTC (permalink / raw)
To: Steffen Eiden, Marc Zyngier, Christian Borntraeger,
Janosch Frank, Claudio Imbrenda, David Hildenbrand,
Heiko Carstens, Vasily Gorbik, Alexander Gordeev, Sven Schnelle
Cc: kvm, linux-s390, linux-kernel, Andreas Grapentin
the module build for the kvm_arm64 module produced kvm-arm64.ko, fix the
Makefile to produce kvm_arm64.ko instead, so the output file name
matches the module name.
Signed-off-by: Andreas Grapentin <gra@linux.ibm.com>
---
arch/s390/kvm/arm64/Makefile | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/arch/s390/kvm/arm64/Makefile b/arch/s390/kvm/arm64/Makefile
index 3f0fe5c9f0a1..b48dc65b7aaa 100644
--- a/arch/s390/kvm/arm64/Makefile
+++ b/arch/s390/kvm/arm64/Makefile
@@ -29,7 +29,7 @@ $(obj)/%-arm64.o: $(src)/%.c FORCE
$(call if_changed_rule,cc_o_c)
$(call cmd,force_checksrc)
-# %-arm64.o stems don't match any kvm-arm64-y entry so Kbuild derives wrong
+# %-arm64.o stems don't match any kvm_arm64-y entry so Kbuild derives wrong
# KBUILD_MODNAME/KBUILD_MODFILE. Force include a generated header to override.
KVM_ARM64_MODNAME_H := $(obj)/generated/kvm_arm64_modname.h
ccflags-y += -include $(KVM_ARM64_MODNAME_H)
@@ -48,7 +48,7 @@ define filechk_kvm_arm64_modname
echo '#undef __KBUILD_MODNAME'; \
echo '#define __KBUILD_MODNAME $(KVM_DEV_NAME)'; \
echo '#undef KBUILD_MODFILE'; \
- echo '#define KBUILD_MODFILE "$(obj)/kvm-arm64"'; \
+ echo '#define KBUILD_MODFILE "$(obj)/kvm_arm64"'; \
echo '#endif /* __KVM_ARM64_MODNAME_H */'
endef
@@ -60,7 +60,7 @@ $(addprefix $(obj)/,$(kvm-arm64-obj)): private part-of-builtin := y
ifeq ($(CONFIG_KVM),m)
-kvm-arm64-y = $(kvm-arm64-obj)
+kvm_arm64-y = $(kvm-arm64-obj)
else ifeq ($(CONFIG_KVM),y)
@@ -86,7 +86,7 @@ $(obj)/kvm_symbol_list: $(obj)/kvm-unnamespaced.o FORCE
# cmd_oc_o_o carries -DKBUILD_MODFILE so generate_builtin_ranges.awk
# can attribute kvm-namespaced.o to kvm_arm64 via its .cmd file.
-cmd_oc_o_o = $(cmd_objcopy) -DKBUILD_MODFILE='"$(obj)/kvm-arm64"'
+cmd_oc_o_o = $(cmd_objcopy) -DKBUILD_MODFILE='"$(obj)/kvm_arm64"'
define rule_oc_o_o
$(call cmd,objcopy)
@printf '%s\n' 'savedcmd_$@ := $(call make-cmd,oc_o_o)' > $(dot-target).cmd
@@ -98,7 +98,7 @@ OBJCOPYFLAGS_kvm-namespaced.o := -O $(LD_BFD) --localize-symbols=$(obj)/kvm_symb
$(obj)/kvm-namespaced.o: $(obj)/kvm-unnamespaced.o $(obj)/kvm_symbol_list FORCE
$(call if_changed_rule,oc_o_o)
-kvm-arm64-y = kvm-namespaced.o
+kvm_arm64-y = kvm-namespaced.o
targets += kvm-unnamespaced.o kvm_symbol_list kvm-namespaced.o
@@ -106,5 +106,5 @@ endif
clean-files += kvm-unnamespaced.o kvm_symbol_list kvm-namespaced.o
-obj-$(CONFIG_KVM) += kvm-arm64.o
+obj-$(CONFIG_KVM) += kvm_arm64.o
--
2.55.0
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 0/3] KVM: s390: arm64: Fixes for arm64 KVM support
2026-11-03 16:37 [PATCH 0/3] KVM: s390: arm64: Fixes for arm64 KVM support Andreas Grapentin
` (2 preceding siblings ...)
2026-11-03 16:37 ` [PATCH 3/3] KVM: s390: arm64: Fix kvm_arm64 module naming consistency Andreas Grapentin
@ 2026-11-03 18:31 ` Marc Zyngier
3 siblings, 0 replies; 5+ messages in thread
From: Marc Zyngier @ 2026-11-03 18:31 UTC (permalink / raw)
To: Andreas Grapentin
Cc: Steffen Eiden, Christian Borntraeger, Janosch Frank,
Claudio Imbrenda, David Hildenbrand, Heiko Carstens,
Vasily Gorbik, Alexander Gordeev, Sven Schnelle, kvm, linux-s390,
linux-kernel
On Tue, 03 Nov 2026 16:37:01 +0000,
Andreas Grapentin <gra@linux.ibm.com> wrote:
>
> Some fixups for the previous series that introduced arm64 KVM support on
> s390. Forward-declare enum vcpu_sysreg because we are definitely going
> to need that, then make the module naming consistent and iron out an
> inconsistency in the definition of vcpu->arch.pause between s390 and
> native arm64 KVM.
It's an interesting one. Obviously, this wasn't caught by building the
upstream code. I guess this triggered with the rest of the patches?
>
> No functional changes intended on either arm64 or s390.
>
> Signed-off-by: Andreas Grapentin <gra@linux.ibm.com>
> ---
> Andreas Grapentin (2):
> KVM: s390: arm64: Declare enum vcpu_sysreg
> KVM: s390: arm64: Fix kvm_arm64 module naming consistency
>
> Steffen Eiden (1):
> KVM: s390: arm64: Turn vcpu->arch.pause into a counter
>
> arch/s390/include/asm/kvm_host_arm64.h | 8 ++++----
> arch/s390/kvm/arm64/Makefile | 12 ++++++------
> 2 files changed, 10 insertions(+), 10 deletions(-)
Looks all reasonable to me.
Acked-by: Marc Zyngier <maz@kernel.org>
M.
--
Without deviation from the norm, progress is not possible.
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2026-11-03 18:31 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-11-03 16:37 [PATCH 0/3] KVM: s390: arm64: Fixes for arm64 KVM support Andreas Grapentin
2026-11-03 16:37 ` [PATCH 1/3] KVM: s390: arm64: Turn vcpu->arch.pause into a counter Andreas Grapentin
2026-11-03 16:37 ` [PATCH 2/3] KVM: s390: arm64: Declare enum vcpu_sysreg Andreas Grapentin
2026-11-03 16:37 ` [PATCH 3/3] KVM: s390: arm64: Fix kvm_arm64 module naming consistency Andreas Grapentin
2026-11-03 18:31 ` [PATCH 0/3] KVM: s390: arm64: Fixes for arm64 KVM support Marc Zyngier
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®