lkml.org 
[lkml]   [2007]   [Mar]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [patch 3/6] mm: fix fault vs invalidate race for linear mappings
On Tue, Mar 06, 2007 at 11:08:41PM -0800, Andrew Morton wrote:
> On Wed, 7 Mar 2007 07:57:27 +0100 Nick Piggin <npiggin@suse.de> wrote:
>
> > >
> > > Why was truncate_inode_pages_range() altered to unmap the page if it got
> > > mapped again?
> > >
> > > Oh. Because the unmap_mapping_range() call got removed from vmtruncate().
> > > Why? (Please send suitable updates to the changelog).
> >
> > We have to ensure it is unmapped, and be prepared to unmap it while under
> > the page lock.
>
> But vmtruncate() dropped i_size, so nobody will map this page into
> pagetables from then on.

But there could be a fault in progress... the only way to know is
locking the page.

> > > I guess truncate of a mmapped area isn't sufficiently common to worry about
> > > the inefficiency of this change.
> >
> > Yeah, and it should be more efficient for files that aren't mmapped,
> > because we don't have to take i_mmap_lock for them.
> >
> > > Lots of memory barriers got removed in memory.c, unchangeloggedly.
> >
> > Yeah they were all for the lockless truncate_count checks. Now that
> > we use the page lock, we don't need barriers.
> >
> > > Gratuitous renaming of locals in do_no_page() makes the change hard to
> > > review. Should have been a separate patch.
> > >
> > > In fact, the patch would have been heaps clearer if that renaming had been
> > > a separate patch.
> >
> > Shall I?
>
> If you don't have anything better to do, yes please ;)

OK.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2007-03-07 08:29    [W:0.090 / U:0.680 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site