Re: [PATCH v2 08/25] KVM: x86/mmu: split cpu_mode from mmu_role

Sean Christopherson
2022-03-08T18:56:03Z

On Mon, Feb 21, 2022, Paolo Bonzini wrote:
> @@ -4800,13 +4836,15 @@ kvm_calc_shadow_mmu_root_page_role(struct kvm_vcpu *vcpu,
> }
>
> static void shadow_mmu_init_context(struct kvm_vcpu *vcpu, struct kvm_mmu *context,
> - const struct kvm_mmu_role_regs *regs,
> - union kvm_mmu_role new_role)
> + union kvm_mmu_role cpu_mode,

Can you give all helpers this treatment (rename "role" => "cpu_mode")? I got
tripped up a few times reading patches because the ones where it wasn't necessary,
i.e. where there's only a single kvm_mmu_role paramenter, were left as-is.

I think kvm_calc_shadow_npt_root_page_role() and kvm_calc_shadow_mmu_root_page_role()
are the only offenders.

> + union kvm_mmu_role mmu_role)
> {
> - if (new_role.as_u64 == context->mmu_role.as_u64)
> + if (cpu_mode.as_u64 == context->cpu_mode.as_u64 &&
> + mmu_role.as_u64 == context->mmu_role.as_u64)
> return;
>
> - context->mmu_role.as_u64 = new_role.as_u64;
> + context->cpu_mode.as_u64 = cpu_mode.as_u64;
> + context->mmu_role.as_u64 = mmu_role.as_u64;
>
> if (!is_cr0_pg(context))
> nonpaging_init_context(context);