Re: [PATCH 08/13] KVM: MMU: fask check whether page is writable
From: Xiao Guangrong
Date: Fri Mar 30 2012 - 01:11:02 EST
On 03/29/2012 11:49 PM, Avi Kivity wrote:
> On 03/29/2012 11:25 AM, Xiao Guangrong wrote:
>> Using PTE_LIST_WRITE_PROTECT bit in rmap store the write-protect status to
>> avoid unnecessary shadow page walking
>
> Does kvm_set_pte_rmapp() need adjustment?
>
Yes, in kvm_set_pte_rmapp(), if the page is host write-protected, it will
set this bit:
static void host_page_write_protect(u64 *spte, unsigned long *rmapp)
{
if (!(*spte & SPTE_HOST_WRITEABLE) &&
!(*rmapp & PTE_LIST_WRITE_PROTECT))
*rmapp |= PTE_LIST_WRITE_PROTECT;
}
It is very useful for fast page fault path to avoid useless shadow
page table waling if KSM is enabled.
>> Also if no shadow page is indirect, the page is write-free
>>
>>
>> + if (!vcpu->kvm->arch.indirect_shadow_pages)
>> + return 0;
>> +
> Best in its own little patch.
>
Okay, will split it into a little patch.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/