Re: [PATCH] mm: avoid dirtying shared mappings on mlock

From: Peter Zijlstra
Date: Fri Oct 12 2007 - 06:37:37 EST


On Fri, 2007-10-12 at 02:57 +1000, Nick Piggin wrote:
> On Friday 12 October 2007 19:03, Peter Zijlstra wrote:
> > Subject: mm: avoid dirtying shared mappings on mlock
> >
> > Suleiman noticed that shared mappings get dirtied when mlocked.
> > Avoid this by teaching make_pages_present about this case.
> >
> > Signed-off-by: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
> > Acked-by: Suleiman Souhlal <suleiman@xxxxxxxxxx>
>
> Umm, I don't see the other piece of this thread, so I don't
> know what the actual problem was.
>
> But I would really rather not do this. If you do this, then you
> now can get random SIGBUSes when you write into the memory if it
> can't allocate blocks or ... (some other filesystem specific
> condition).

I'm not getting this, make_pages_present() only has to ensure all the
pages are read from disk and in memory. How is this different from a
read-scan?

The pages will still be read-only due to dirty tracking, so the first
write will still do page_mkwrite().


Attachment: signature.asc
Description: This is a digitally signed message part