Re: [patch 2/6] mmu_notifier: Callbacks to invalidate address ranges

!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@...>, Nick Piggin <npiggin@...>, <kvm-devel@...>, Benjamin Herrenschmidt <benh@...>, Peter Zijlstra <a.p.zijlstra@...>, <steiner@...>, <linux-kernel@...>, <linux-mm@...>, <daniel.blueman@...>, Hugh Dickins <hugh@...>
Date: Tuesday, January 29, 2008 - 7:43 pm

On Tue, Jan 29, 2008 at 02:55:56PM -0800, Christoph Lameter wrote:

With "my" code, invalidate_range wasn't placed there at all, my
modification to ptep_clear_flush already covered it in a automatic
way, grep from the word fremap in my latest patch you won't find it,
like you won't find any change to do_wp_page. Not sure why you keep
thinking I added those invalidate_range when infact you did.

The user space spinlock plays also in declaring rdtscp unworkable to
provide a monotone vgettimeofday w/o kernel locking.

My patch by calling invalidate_page inside ptep_clear_flush guaranteed
that both the thread writing through sptes and the thread writing
through linux ptes, couldn't possibly simultaneously write to two
different physical pages.

Your patch allows the thread writing through linux-pte to write to a
new populated page while the old thread writing through sptes still
writes to the old page. Is that safe? I don't know for sure. The fact
the physical page backing the virtual address could change back and
forth, perhaps invalidates the theory that somebody could possibly do
some useful locking out of it relaying on all threads seeing the same
physical page at the same time.

Anyway as long as invalidate_page/range happens after ptep_clear_flush
things are mostly ok.


Actually above I was describing remap_file_pages not do_wp_page.


In that scenario because write is forbidden (unlike remap_file_pages)
like you said things should be ok. The spte reader will eventually see
the updates happening in the new page, as long as the spte invalidate
happens after ptep_clear_flush (i.e. with my incremental fix applied
to your code, or with my latest patch).
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[patch 2/6] mmu_notifier: Callbacks to invalidate address ra..., Christoph Lameter, (Mon Jan 28, 4:28 pm)
Re: [patch 2/6] mmu_notifier: Callbacks to invalidate addres..., Andrea Arcangeli, (Tue Jan 29, 12:20 pm)
Re: [patch 2/6] mmu_notifier: Callbacks to invalidate addres..., Christoph Lameter, (Tue Jan 29, 3:55 pm)
Re: [patch 2/6] mmu_notifier: Callbacks to invalidate addres..., Christoph Lameter, (Tue Jan 29, 5:35 pm)
Re: [patch 2/6] mmu_notifier: Callbacks to invalidate addres..., Christoph Lameter, (Tue Jan 29, 6:39 pm)
Re: [patch 2/6] mmu_notifier: Callbacks to invalidate addres..., Christoph Lameter, (Wed Jan 30, 3:35 pm)
Re: [patch 2/6] mmu_notifier: Callbacks to invalidate addres..., Christoph Lameter, (Wed Jan 30, 3:50 pm)
Re: [patch 2/6] mmu_notifier: Callbacks to invalidate addres..., Christoph Lameter, (Wed Jan 30, 8:01 pm)
Re: [kvm-devel] [patch 2/6] mmu_notifier: Callbacks to inval..., Christoph Lameter, (Wed Jan 30, 10:08 pm)
Re: [kvm-devel] [patch 2/6] mmu_notifier: Callbacks to inval..., Andrea Arcangeli, (Wed Jan 30, 10:42 pm)
Re: [kvm-devel] [patch 2/6] mmu_notifier: Callbacks to inval..., Christoph Lameter, (Wed Jan 30, 10:51 pm)
Re: [kvm-devel] [patch 2/6] mmu_notifier: Callbacks to inval..., Christoph Lameter, (Wed Jan 30, 9:46 pm)
Re: [kvm-devel] mmu_notifier: invalidate_range_start with lo..., Christoph Lameter, (Wed Jan 30, 10:56 pm)
Re: [kvm-devel] [patch 2/6] mmu_notifier: Callbacks to inval..., Christoph Lameter, (Wed Jan 30, 10:37 pm)
Re: [patch 2/6] mmu_notifier: Callbacks to invalidate addres..., Christoph Lameter, (Tue Jan 29, 8:20 pm)
Re: [patch 2/6] mmu_notifier: Callbacks to invalidate addres..., Christoph Lameter, (Wed Jan 30, 3:41 pm)
Re: [patch 2/6] mmu_notifier: Callbacks to invalidate addres..., Christoph Lameter, (Wed Jan 30, 4:55 pm)
Re: [patch 2/6] mmu_notifier: Callbacks to invalidate addres..., Christoph Lameter, (Tue Jan 29, 8:35 pm)
Re: [patch 2/6] mmu_notifier: Callbacks to invalidate addres..., Christoph Lameter, (Tue Jan 29, 8:22 pm)
Re: [patch 2/6] mmu_notifier: Callbacks to invalidate addres..., Christoph Lameter, (Tue Jan 29, 4:30 pm)
Re: [patch 2/6] mmu_notifier: Callbacks to invalidate addres..., Christoph Lameter, (Tue Jan 29, 5:53 pm)
Re: [patch 2/6] mmu_notifier: Callbacks to invalidate addres..., Christoph Lameter, (Tue Jan 29, 6:55 pm)
Re: [patch 2/6] mmu_notifier: Callbacks to invalidate addres..., Andrea Arcangeli, (Tue Jan 29, 7:43 pm)
Re: [patch 2/6] mmu_notifier: Callbacks to invalidate addres..., Christoph Lameter, (Tue Jan 29, 8:34 pm)