lkml.org 
[lkml]   [2012]   [Apr]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 00/13] KVM: MMU: fast page fault
On Tue, 10 Apr 2012 13:39:14 +0300
Avi Kivity <avi@redhat.com> wrote:

> On 04/09/2012 10:46 PM, Marcelo Tosatti wrote:
> > Perhaps the mmu_lock hold times by get_dirty are a large component here?
> > If that can be alleviated, not only RO->RW faults benefit.
> >
> >
>
> Currently the longest holder in normal use is probably reading the dirty
> log and write protecting the shadow page tables.
>
> We could fix that by switching to O(1) write protection
> (write-protecting PML4Es instead of PTEs). It would be interesting to
> combine O(1) write protection with lockless write-enabling.
>

As Marcelo suggested during reviewing srcu-less dirty logging, we can
mitigate the get_dirty's mmu_lock hold time problem cleanly, locally in
get_dirty_log(), by using cond_resched_lock() -- although we need to
introduce cond_rescheck_lock_cb() to conditionally flush TLB.

I have already started that work.

Actually I introduced rmap based get_dirty for that kind of fine-grained
contention control.

I think we should do our best not to affect mmu so much just for the
limited time of live migration.

Takuya


\
 
 \ /
  Last update: 2012-04-10 13:43    [W:0.369 / U:0.192 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site