FAILED: patch "[PATCH] Revert "KVM: svm: handle KVM_X86_QUIRK_CD_NW_CLEARED in" failed to apply to 4.2-stable tree
Subsystems (3)
[email protected]
maintainerThe patch below does not apply to the 4.2-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
Quoted 1 line
From
bcf166a9942c3aabd8b752a7c38a49f57c54cfb8Mon Sep 17 00:00:00 2001
From: Paolo Bonzini <[email protected]>
Date: Thu, 1 Oct 2015 13:19:55 +0200
Subject: [PATCH] Revert "KVM: svm: handle KVM_X86_QUIRK_CD_NW_CLEARED in
svm_get_mt_mask"
This reverts commit 5492830370171b6a4ede8a3bfba687a8d0f25fa5. It builds on the commit that is being reverted next.
Cc [email protected] # 4.2+
Signed-off-by Paolo Bonzini <[email protected]>
arch/x86/kvm/svm.c +7 -8
@@ -1177,10 +1177,6 @@ static u64 svm_get_mt_mask(struct kvm_vcpu *vcpu, gfn_t gfn, bool is_mmio)if (!kvm_arch_has_assigned_device (vcpu->kvm))return 0 ; -if (!kvm_check_has_quirk (vcpu->kvm,KVM_X86_QUIRK_CD_NW_CLEARED ) && -kvm_read_cr0 (vcpu) &X86_CR0_CD ) -return _PAGE_NOCACHE; - mtrr =kvm_mtrr_get_guest_memory_type (vcpu, gfn);return mtrr2protval[mtrr]; }
@@ -1676,10 +1672,13 @@ static void svm_set_cr0(struct kvm_vcpu *vcpu, unsigned long cr0)if (!vcpu->fpu_active) cr0 |=X86_CR0_TS ; - -/* These are emulated via page tables. */ - cr0 &= ~(X86_CR0_CD |X86_CR0_NW ); - +/* +* re-enable caching here because the QEMU bios +* does not do it - this results in some delay at +* reboot +*/ +if (kvm_check_has_quirk (vcpu->kvm,KVM_X86_QUIRK_CD_NW_CLEARED )) + cr0 &= ~(X86_CR0_CD |X86_CR0_NW ); svm->vmcb->save.cr0 = cr0;mark_dirty (svm->vmcb,VMCB_CR );update_cr0_intercept (svm);