2015-04-13 08:58+0200, Jan Kiszka:
> When hardware supports the g_pat VMCB field, we can use it for emulating
> the PAT configuration that the guest configures by writing to the
> corresponding MSR.
> 
> Signed-off-by: Jan Kiszka <[email protected]>
> ---
> 
> RFC because it is only compile-tested.
> 
> diff --git a/arch/x86/kvm/svm.c b/arch/x86/kvm/svm.c
> @@ -3245,6 +3245,15 @@ static int svm_set_msr(struct kvm_vcpu *vcpu, struct 
> msr_data *msr)
>       case MSR_VM_IGNNE:
>               vcpu_unimpl(vcpu, "unimplemented wrmsr: 0x%x data 0x%llx\n", 
> ecx, data);
>               break;
> +     case MSR_IA32_CR_PAT:
> +             if (npt_enabled) {
> +                     if (!kvm_mtrr_valid(vcpu, MSR_IA32_CR_PAT, data))
> +                             return 1;
> +                     svm->vmcb->save.g_pat = data;
> +                     vcpu->arch.pat = data;

Disregarding my Reviewed-by, the code is missing:

  mark_dirty(svm->vmcb, VMCB_NPT);

Also,

Tested-by: Radim Krčmář <[email protected]>
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to