Hi Marc, On Sat, May 28, 2022 at 4:38 AM Marc Zyngier <maz@xxxxxxxxxx> wrote: > > 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... > > Signed-off-by: Marc Zyngier <maz@xxxxxxxxxx> > --- > 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 5eb6791df608..c9dd0d4e22f2 100644 > --- a/arch/arm64/include/asm/kvm_host.h > +++ b/arch/arm64/include/asm/kvm_host.h > @@ -338,6 +338,15 @@ struct kvm_vcpu_arch { > /* Miscellaneous vcpu state flags */ > u64 flags; > > + /* Configuration flags */ > + u64 cflags; > + > + /* Input flags to the hypervisor code */ > + u64 iflags; > + > + /* State flags, unused by the hypervisor code */ > + u64 sflags; Although I think VCPU_SVE_FINALIZED could be considered "state" rather than "configuration", I assume the reason why it is handled by cflags in the following patches is because VCPU_SVE_FINALIZED is set once for all. If my assumption is correct, it would be clearer to add "set once and for all" in the comment for cflags. Also, if we end up using VCPU_SVE_FINALIZED in hypervisor code later, then should it be handled by iflags instead of cflags ? My understanding of how those flags should be used is as follows. Is my understanding correct ? iflags: flags that are used by hypervisor code cflags: flags that are set once for all and unused by hypervisor code sflags: flags that could be set/cleared more than once and unused by hypervisor code Thanks, Reiji > + > /* > * 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 > > _______________________________________________ > kvmarm mailing list > kvmarm@xxxxxxxxxxxxxxxxxxxxx > https://lists.cs.columbia.edu/mailman/listinfo/kvmarm