KVM: MMU: Explicitly set D-bit for writable spte.
authorKai Huang <kai.huang@linux.intel.com>
Wed, 28 Jan 2015 02:54:25 +0000 (10:54 +0800)
committerPaolo Bonzini <pbonzini@redhat.com>
Thu, 29 Jan 2015 14:31:33 +0000 (15:31 +0100)
commit9b51a63024bd759f97a12f50907b8af23b065b36
tree08cc77c6722f2be119b4b73538ddd7b23ebe9672
parentf4b4b1808690c37c7c703d43789c1988c5e7fdeb
KVM: MMU: Explicitly set D-bit for writable spte.

This patch avoids unnecessary dirty GPA logging to PML buffer in EPT violation
path by setting D-bit manually prior to the occurrence of the write from guest.

We only set D-bit manually in set_spte, and leave fast_page_fault path
unchanged, as fast_page_fault is very unlikely to happen in case of PML.

For the hva <-> pa change case, the spte is updated to either read-only (host
pte is read-only) or be dropped (host pte is writeable), and both cases will be
handled by above changes, therefore no change is necessary.

Signed-off-by: Kai Huang <kai.huang@linux.intel.com>
Reviewed-by: Xiao Guangrong <guangrong.xiao@linux.intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/mmu.c