Re: [PATCH] mmu notifiers #v5

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Christoph Lameter <clameter@...>
Cc: Robin Holt <holt@...>, Avi Kivity <avi@...>, Izik Eidus <izike@...>, <kvm-devel@...>, Peter Zijlstra <a.p.zijlstra@...>, <steiner@...>, <linux-kernel@...>, <linux-mm@...>, <daniel.blueman@...>
Date: Tuesday, February 5, 2008 - 2:08 pm

On Mon, Feb 04, 2008 at 10:11:24PM -0800, Christoph Lameter wrote:

invalidate_pages is only a further optimization that was
strightforward in some places where the page isn't freed but only the
pte modified.


The patch as a whole isn't fragile nor complex. Pretending to use
invalidate_pages anywhere would be complex (and in turn more fragile
than my current patch, complexity brings fragility).

Overall you can only argue against performance issues (my patch is
simpler for GRU/KVM, and it sure isn't fragile, quite the opposite,
given I never allow a coherency-loss between two threads that will
read/write to two different physical pages for the same virtual
adddress in remap_file_pages).

In performance terms with your patch before GRU can run follow_page it
has to take a mm-wide global mutex where each thread in all cpus will
have to take it. That will trash on >4-way when the tlb misses start
to occour. There's nothing like that in my patch. Your approach will
micro-optimize certain large pte-mangling calls, or do_exit, but those
aren't interesting paths nor for GRU nor for KVM. You're optimizing for
the slow path, and making the fast path slower.


There can be many tricks to optimize page in pages, but again munmap
and do_exit aren't the interesting path to optimzie, nor for GRU nor
for KVM so it doesn't matter right now.
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[patch 0/3] [RFC] MMU Notifiers V4, Christoph Lameter, (Thu Jan 31, 12:57 am)
[PATCH] mmu notifiers #v5, Andrea Arcangeli, (Thu Jan 31, 1:18 pm)
Re: [PATCH] mmu notifiers #v5, Christoph Lameter, (Thu Jan 31, 4:18 pm)
Re: [PATCH] mmu notifiers #v5, Andrea Arcangeli, (Thu Jan 31, 7:28 pm)
Re: [PATCH] mmu notifiers #v5, Christoph Lameter, (Thu Jan 31, 9:37 pm)
Re: [PATCH] mmu notifiers #v5, Andrea Arcangeli, (Fri Feb 1, 8:00 am)
Re: [PATCH] mmu notifiers #v5, Robin Holt, (Thu Jan 31, 10:23 pm)
Re: [PATCH] mmu notifiers #v5, Christoph Lameter, (Thu Jan 31, 10:26 pm)
Re: [PATCH] mmu notifiers #v5, Christoph Lameter, (Thu Jan 31, 7:09 pm)
Re: [PATCH] mmu notifiers #v5, Andrea Arcangeli, (Thu Jan 31, 7:41 pm)
Re: [PATCH] mmu notifiers #v5, Christoph Lameter, (Thu Jan 31, 9:44 pm)
Re: [PATCH] mmu notifiers #v5, Andrea Arcangeli, (Fri Feb 1, 8:09 am)
Re: [PATCH] mmu notifiers #v5, Christoph Lameter, (Fri Feb 1, 3:23 pm)
Re: [PATCH] mmu notifiers #v5, Andrea Arcangeli, (Sat Feb 2, 10:17 pm)
Re: [PATCH] mmu notifiers #v5, Christoph Lameter, (Mon Feb 4, 3:09 pm)
Re: [PATCH] mmu notifiers #v5, Andrea Arcangeli, (Tue Feb 5, 1:25 am)
Re: [PATCH] mmu notifiers #v5, Christoph Lameter, (Tue Feb 5, 2:11 am)
Re: [PATCH] mmu notifiers #v5, Andrea Arcangeli, (Tue Feb 5, 2:08 pm)
Re: [PATCH] mmu notifiers #v5, Christoph Lameter, (Tue Feb 5, 2:17 pm)
Re: [PATCH] mmu notifiers #v5, Andrea Arcangeli, (Tue Feb 5, 4:55 pm)
Re: [PATCH] mmu notifiers #v5, Christoph Lameter, (Tue Feb 5, 6:06 pm)
Re: [PATCH] mmu notifiers #v5, Andrea Arcangeli, (Tue Feb 5, 6:26 pm)
Re: [PATCH] mmu notifiers #v5, Christoph Lameter, (Tue Feb 5, 7:10 pm)
Re: [PATCH] mmu notifiers #v5, Andrea Arcangeli, (Tue Feb 5, 7:47 pm)
Re: [PATCH] mmu notifiers #v5, Christoph Lameter, (Tue Feb 5, 8:04 pm)
Re: [PATCH] mmu notifiers #v5, Robin Holt, (Tue Feb 5, 6:12 pm)
Re: [PATCH] mmu notifiers #v5, Jack Steiner, (Sat Feb 2, 11:14 pm)
Re: [PATCH] mmu notifiers #v5, Andrea Arcangeli, (Sat Feb 2, 11:33 pm)