[PATCH v2 06/19] KVM: arm64: Add three sets of flags to the vcpu state

Marc Zyngier
2022-06-10T09:30:49Z

It so appears that each of the vcpu flags is really belonging to
one of three categories:

- a configuration flag, set once and for all
- an input flag generated by the kernel for the hypervisor to use
- a state flag that is only for the kernel's own bookkeeping

As we are going to split all the existing flags into these three
sets, introduce all three in one go.

No functional change other than a bit of bloat...

Reviewed-by: Fuad Tabba <tabba@google.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
---
arch/arm64/include/asm/kvm_host.h | 9 +++++++++
1 file changed, 9 insertions(+)

diff --git a/arch/arm64/include/asm/kvm_host.h b/arch/arm64/include/asm/kvm_host.h
index 6d30ac7e3164..af45320f247f 100644
--- a/arch/arm64/include/asm/kvm_host.h
+++ b/arch/arm64/include/asm/kvm_host.h
@@ -335,6 +335,15 @@ struct kvm_vcpu_arch {
/* Miscellaneous vcpu state flags */
u64 flags;

+ /* Configuration flags, set once and for all before the vcpu can run */
+ u64 cflags;
+
+ /* Input flags to the hypervisor code, potentially cleared after use */
+ u64 iflags;
+
+ /* State flags for kernel bookkeeping, unused by the hypervisor code */
+ u64 sflags;
+
/*
* We maintain more than a single set of debug registers to support
* debugging the guest from the host and to maintain separate host and
--
2.34.1