diff options
author | Xiao Guangrong <guangrong.xiao@linux.intel.com> | 2016-02-24 17:51:12 +0800 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2016-03-03 14:36:22 +0100 |
commit | e5691a81e830c12d396b3f219ab999be87a1208f (patch) | |
tree | b916b2799982fa81d5f01dda0f48360263691f61 /arch/x86/include | |
parent | 3d0c27ad6ee465f174b09ee99fcaf189c57d567a (diff) | |
download | op-kernel-dev-e5691a81e830c12d396b3f219ab999be87a1208f.zip op-kernel-dev-e5691a81e830c12d396b3f219ab999be87a1208f.tar.gz |
KVM: MMU: clear write-flooding on the fast path of tracked page
If the page fault is caused by write access on write tracked page, the
real shadow page walking is skipped, we lost the chance to clear write
flooding for the page structure current vcpu is using
Fix it by locklessly waking shadow page table to clear write flooding
on the shadow page structure out of mmu-lock. So that we change the
count to atomic_t
Signed-off-by: Xiao Guangrong <guangrong.xiao@linux.intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'arch/x86/include')
-rw-r--r-- | arch/x86/include/asm/kvm_host.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/x86/include/asm/kvm_host.h b/arch/x86/include/asm/kvm_host.h index 71e43fe..e2fc5c0 100644 --- a/arch/x86/include/asm/kvm_host.h +++ b/arch/x86/include/asm/kvm_host.h @@ -285,7 +285,7 @@ struct kvm_mmu_page { #endif /* Number of writes since the last time traversal visited this page. */ - int write_flooding_count; + atomic_t write_flooding_count; }; struct kvm_pio_request { |