Messages in this thread |  | | Date | Sun, 6 Apr 2008 23:20:08 -0700 (PDT) | From | Christoph Lameter <> | Subject | Re: [patch 02/10] emm: notifier logic |
| |
On Mon, 7 Apr 2008, Andrea Arcangeli wrote:
> > > My mm_lock solution makes all rcu serialization an unnecessary > > > overhead so you should remove it like I already did in #v11. If it > > > wasn't the case, then mm_lock wouldn't be a definitive fix for the > > > race. > > > > There still could be junk in the cache of one cpu. If you just read the > > new pointer but use the earlier content pointed to then you have a > > problem. > > There can't be junk, spinlocks provides semantics of proper memory > barriers, just like rcu, so it's entirely superflous. > > There could be junk only if any of the mmu_notifier_* methods would be > invoked _outside_ the i_mmap_lock and _outside_ the anon_vma and > outside the mmap_sem, that is never the case of course.
So we use other locks to perform serialization on the list chains? Basically the list chains are protected by either mmap_sem or an rmap lock? We need to document that.
In that case we could also add an unregister function.
|  |