Re: [PATCH v6 29/33] KVM: s390: arm64: Implement required functions
From: Janosch Frank
Date: Fri Aug 28 2026 - 07:36:22 EST
On 8/12/26 5:36 PM, Steffen Eiden wrote:
Implement the mostly trivial functions that the shared arm64 (kvm)
code & headers oblige s390 to implement.
Implement a very basic smccc handler that (non-compliantly) is just able
to stop a vcpu.
Signed-off-by: Steffen Eiden <seiden@xxxxxxxxxxxxx>
---
arch/s390/include/arm64/kvm_emulate.h | 130 ++++++++++++++++++++++++++
arch/s390/include/arm64/kvm_nested.h | 11 +++
arch/s390/include/arm64/ptrace.h | 11 +++
arch/s390/include/arm64/sysreg.h | 13 +++
arch/s390/kvm/arm64/handle_exit.c | 98 +++++++++++++++++++
arch/s390/kvm/arm64/inject_fault.c | 21 +++++
6 files changed, 284 insertions(+)
create mode 100644 arch/s390/include/arm64/kvm_emulate.h
create mode 100644 arch/s390/include/arm64/kvm_nested.h
create mode 100644 arch/s390/include/arm64/ptrace.h
create mode 100644 arch/s390/include/arm64/sysreg.h
create mode 100644 arch/s390/kvm/arm64/handle_exit.c
create mode 100644 arch/s390/kvm/arm64/inject_fault.c
[...]
+static __always_inline unsigned long kvm_vcpu_get_hfar(const struct kvm_vcpu *vcpu)
+{
+ return vcpu->arch.sae_block.hai.far_elz;
+}
+
+static __always_inline phys_addr_t kvm_vcpu_get_fault_ipa(const struct kvm_vcpu *vcpu)
+{
+ return vcpu->arch.sae_block.hai.teid.addr * PAGE_SIZE;
gfn_to_gpa()?