[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20081104162820.644b1487@lxorguk.ukuu.org.uk>
Date: Tue, 4 Nov 2008 16:28:20 +0000
From: Alan Cox <alan@...rguk.ukuu.org.uk>
To: Peter Zijlstra <peterz@...radead.org>
Cc: Chris Friesen <cfriesen@...tel.com>,
Rik van Riel <riel@...hat.com>,
"Eugene V. Lyubimkin" <jackyf.devel@...il.com>,
linux-kernel@...r.kernel.org, linux-mm <linux-mm@...ck.org>,
hugh <hugh@...itas.com>
Subject: Re: mmap: is default non-populating behavior stable?
On Tue, 04 Nov 2008 17:07:00 +0100
Peter Zijlstra <peterz@...radead.org> wrote:
> On Tue, 2008-11-04 at 09:56 -0600, Chris Friesen wrote:
> > Rik van Riel wrote:
> > > Peter Zijlstra wrote:
> >
> > >> The exact interaction of mmap() and truncate() I'm not exactly clear on.
> > >
> > > Truncate will reduce the size of the mmaps on the file to
> > > match the new file size, so processes accessing beyond the
> > > end of file will get a segmentation fault (SIGSEGV).
> >
> > I suspect Peter was talking about using truncate() to set the initial
> > file size, effectively increasing rather than reducing it.
>
> I was thinking of truncate() on an already mmap()'ed region, either
> increasing or decreasing the size so that part of the mmap becomes
> (in)valid.
>
> I'm not sure how POSIX speaks of this.
>
> I think Linux does the expected thing.
I believe our behaviour is correct for mmap/mumap/truncate and it
certainly used to be and was tested.
At the point you do anything involving mremap (which is non posix) our
behaviour becomes rather bizarre.
Alan
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists