Patchwork [03/14] KVM: arm: Make vcpu finalization stubs into inline functions

mail settings
Submitter Dave Martin
Date April 12, 2019, 4:28 p.m.
Message ID <>
Download mbox | patch
Permalink /patch/772007/
State New
Headers show


Dave Martin - April 12, 2019, 4:28 p.m.
The vcpu finalization stubs kvm_arm_vcpu_finalize() and
kvm_arm_vcpu_is_finalized() are currently #defines for ARM, which
limits the type-checking that the compiler can do at runtime.

The only reason for them to be #defines was to avoid reliance on
the definition of struct kvm_vcpu, which is not available here due
to circular #include problems.  However, because these are stubs
containing no code, they don't need the definition of struct
kvm_vcpu after all; only a declaration is needed (which is
available already).

So in the interests of cleanliness, this patch converts them to
inline functions.

No functional change.

Suggested-by: Andrew Jones <>
Signed-off-by: Dave Martin <>
 arch/arm/include/asm/kvm_host.h | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)


diff --git a/arch/arm/include/asm/kvm_host.h b/arch/arm/include/asm/kvm_host.h
index d956273..7feddac 100644
--- a/arch/arm/include/asm/kvm_host.h
+++ b/arch/arm/include/asm/kvm_host.h
@@ -412,7 +412,14 @@  static inline int kvm_arm_setup_stage2(struct kvm *kvm, unsigned long type)
 	return 0;
-#define kvm_arm_vcpu_finalize(vcpu, what) (-EINVAL)
-#define kvm_arm_vcpu_is_finalized(vcpu) true
+static inline int kvm_arm_vcpu_finalize(struct kvm_vcpu *vcpu, int what)
+	return -EINVAL;
+static inline bool kvm_arm_vcpu_is_finalized(struct kvm_vcpu *vcpu)
+	return true;
 #endif /* __ARM_KVM_HOST_H__ */