On Tue, May 04, 2021, Paolo Bonzini wrote: > On 04/05/21 21:55, Sean Christopherson wrote: > > But, I think we we can avoid bikeshedding by simply eliminating this flag. More > > in later patches. > > Are you thinking of checking slot->arch.rmap[0] directly? That should work > indeed. > > > > - kvm_mmu_init_tdp_mmu(kvm); > > > + if (!kvm_mmu_init_tdp_mmu(kvm)) > > > + activate_shadow_mmu(kvm); > > Doesn't come into play yet, but I would strongly prefer to open code setting the > > necessary flag instead of relying on the helper to never fail. > > > > You mean > > kvm->arch.shadow_mmu_active = !kvm_mmu_init_tdp_mmu(kvm); > > (which would assign to alloc_memslot_rmaps instead if shadow_mmu_active is > removed)? That makes sense. Ya, that or: if (kvm_mmu_init_tdp_mmu(kvm)) kvm->arch.memslots_have_rmaps = true; I don't have a preference between the two variants.