Messages in this thread | | | Date | Tue, 17 Apr 2012 20:10:55 +0800 | From | Xiao Guangrong <> | Subject | Re: [PATCH v2 10/16] KVM: MMU: fask check whether page is writable |
| |
On 04/17/2012 03:41 PM, Avi Kivity wrote:
> On 04/17/2012 06:55 AM, Xiao Guangrong wrote: >> On 04/16/2012 07:47 PM, Avi Kivity wrote: >> >>> On 04/16/2012 01:20 PM, Xiao Guangrong wrote: >>>>>> >>>>>> It is used to avoid the unnecessary overload >>>>> >>>>> It's overloading me :( >>>>> >>>> >>>> >>>> Sorry. >>>> >>> >>> The trick is to send those in separate patchset so the maintainer >>> doesn't notice. >>> >> >> >> Thanks for your suggestion, i will pay more attention on it in the >> further. >> >> For this patch, what did you mean of "those"? You mean the whole >> rmap.PTE_LIST_WP_BIT (fast check for shadow page table write protection >> and host write protection) or just about host_page_write_protect >> (for KSM only)? > > All of it. Let's start with just modifying sptes concurrently and only > later add reading bits from rmap concurrently, if it proves necessary. >
Okay, i agree.
>> >> If we do not have rmap.PTE_LIST_WP_BIT, there may have regression on >> shadow mmu. >> >> Hmm, do i need implement rmap.PTE_LIST_WP_BIT, then fast page fault? > > Let's try to measure the effect without rmap.PTE_LIST_WP_BIT. Usually > PTE chains for page tables are short so the effect would be small. Of > course we can't tell about all guest. >
It is not about rmap's spte, it is about sp.sync write-protect, if the sp.sync is written, the fast page fault path will be triggered even if no migration and no framebuffer.
I have done a quick test for kernbench for 10 times and get the average value without xwindow:
keep rmap.PTE_LIST_WP_BIT: 53.494 comment rmap.PTE_LIST_WP_BIT checking in page_fault_can_be_fast: 53.948
Anyway, for good review, let move fast page fault in first and discuss this in the separate patchset later.
| |