[patch] somebody please fix this outstanding mmap(2) bug

Alexander Best alexbestms at wwu.de
Mon Mar 22 19:46:57 UTC 2010


John Baldwin schrieb am 2010-03-22:
> On Monday 22 March 2010 11:07:43 am Alexander Best wrote:
> > could somebody please commit this patch? it's been around forever
> > (2003 or
> > 2004) and fixes mmap so the offset argument is being ignored when
> > MAP_ANON
> is
> > defined (just like the mmap(2) manual says). right now the offset
> > argument
> is
> > being taken into account although MAP_ANON is set!!!

> > the pr is kern/71258 (including a little c app to demonstrate the
> > bug)

> > i've also sent a followup patch to the pr which returns EINVAL if
> > the offset
> > is non zero and MAP_ANON is set, but i guess that might break some
> > code.

> I think we should go the EINVAL route, and I will commit the patch
> you did to
> add that.

thanks. :) i've checked what posix sais about this and since it doesn't know
MAP_ANON there's no real rule for this case. the only thing that comes close
is:

"The mmap() function may fail if:

[EINVAL]
The addr argument (if MAP_FIXED was specified) or off is not a multiple of the
page size as returned by sysconf(), or is considered invalid by the
implementation."

-- 
Alexander Best


More information about the freebsd-hackers mailing list