KVM: MMU: Make pte_list_desc fit cache lines well
authorTakuya Yoshikawa <yoshikawa.takuya@oss.ntt.co.jp>
Wed, 21 Mar 2012 14:49:39 +0000 (23:49 +0900)
committerAvi Kivity <avi@redhat.com>
Sun, 8 Apr 2012 13:08:25 +0000 (16:08 +0300)
commit220f773a0013bf6fe2eefd9718ac7471f368fd8e
treea4062100aff69a887a3636743fa407d440d7c512
parentc36fc04ef558c95cff46a8c89d2f804f217335f5
KVM: MMU: Make pte_list_desc fit cache lines well

We have PTE_LIST_EXT + 1 pointers in this structure and these 40/20
bytes do not fit cache lines well.  Furthermore, some allocators may
use 64/32-byte objects for the pte_list_desc cache.

This patch solves this problem by changing PTE_LIST_EXT from 4 to 3.

For shadow paging, the new size is still large enough to hold both the
kernel and process mappings for usual anonymous pages.  For file
mappings, there may be a slight change in the cache usage.

Note: with EPT/NPT we almost always have a single spte in each reverse
mapping and we will not see any change by this.

Signed-off-by: Takuya Yoshikawa <yoshikawa.takuya@oss.ntt.co.jp>
Signed-off-by: Avi Kivity <avi@redhat.com>
arch/x86/kvm/mmu.c