Re: [PATCH 0/2] mm: introduce MAP_FIXED_SAFE

From: Michal Hocko
Date: Fri Dec 08 2017 - 03:33:24 EST


On Thu 07-12-17 11:57:27, Matthew Wilcox wrote:
> On Thu, Dec 07, 2017 at 11:14:27AM -0800, Kees Cook wrote:
> > On Wed, Dec 6, 2017 at 9:46 PM, Michael Ellerman <mpe@xxxxxxxxxxxxxx> wrote:
> > > Matthew Wilcox <willy@xxxxxxxxxxxxx> writes:
> > >> So, just like we currently say "exactly one of MAP_SHARED or MAP_PRIVATE",
> > >> we could add a new paragraph saying "at most one of MAP_FIXED or
> > >> MAP_REQUIRED" and "any of the following values".
> > >
> > > MAP_REQUIRED doesn't immediately grab me, but I don't actively dislike
> > > it either :)
> > >
> > > What about MAP_AT_ADDR ?
> > >
> > > It's short, and says what it does on the tin. The first argument to mmap
> > > is actually called "addr" too.
> >
> > "FIXED" is supposed to do this too.
> >
> > Pavel suggested:
> >
> > MAP_ADD_FIXED
> >
> > (which is different from "use fixed", and describes why it would fail:
> > can't add since it already exists.)
> >
> > Perhaps "MAP_FIXED_NEW"?
> >
> > There has been a request to drop "FIXED" from the name, so these:
> >
> > MAP_FIXED_NOCLOBBER
> > MAP_FIXED_NOREPLACE
> > MAP_FIXED_ADD
> > MAP_FIXED_NEW
> >
> > Could be:
> >
> > MAP_NOCLOBBER
> > MAP_NOREPLACE
> > MAP_ADD
> > MAP_NEW
> >
> > and we still have the unloved, but acceptable:
> >
> > MAP_REQUIRED
> >
> > My vote is still for "NOREPLACE" or "NOCLOBBER" since it's very
> > specific, though "NEW" is pretty clear too.
>
> How about MAP_NOFORCE?

OK, this doesn't seem to lead to anywhere. The more this is discussed
the more names we are getting. So you know what? I will resubmit and
keep my original name. If somebody really hates it then feel free to
nack the patch and push alternative and gain concensus on it.

I will keep MAP_FIXED_SAFE because it is an alternative to MAP_FIXED so
having that in the name is _useful_ for everybody familiar with
MAP_FIXED already. And _SAFE suffix tells that the operation doesn't
cause any silent memory corruptions or other unexpected side effects.
--
Michal Hocko
SUSE Labs