Messages in this thread | | | Date | Wed, 27 Jan 2010 21:18:42 -0600 | From | Robin Holt <> | Subject | Re: [PATCH] - Fix unmap_vma() bug related to mmu_notifiers |
| |
On Tue, Jan 26, 2010 at 10:38:53PM +0100, Andrea Arcangeli wrote: > On Tue, Jan 26, 2010 at 03:29:04PM -0600, Robin Holt wrote: > > On Mon, Jan 25, 2010 at 10:16:15PM +0100, Andrea Arcangeli wrote: > > > The old patches are in my ftp area, they should still apply, you > > > should concentrate testing with those additional ones applied, then it > > > will work for xpmem too ;) > > > > Andrea, could you point me at your ftp area? > > Sure, this is the very latest version I maintained: > > http://www.kernel.org/pub/linux/kernel/people/andrea/patches/v2.6/2.6.26-rc7/mmu-notifier-v18/
Let me start with what XPMEM currently has.
We adjusted xpmem so that the mmu_notifier_invalidate_page() callout does not need to sleep. It takes the arguments passed in and adds them to a queue for clearing the pages. We added a seperate kernel thread which manages this clearing.
The mmu_notifier_invalidate_range_end() likewise does not really need to sleep either.
That leaves the mmu_notifier_invalidate_range_start() callout. This does not need to drop the mm_sem. It does need to be able to sleep waiting for the invalidations to complete on the other process. That other process may be on a different SSI connected to the same Numalink fabric.
I think that with the SRCU patch, we have enough. Is that true or have I missed something?
Thanks, Robin
| |