mmap(2) with MAP_ANON honouring offset although it shouldn't

Alan Cox alc at cs.rice.edu
Thu Nov 5 18:03:45 UTC 2009


Alexander Best wrote:
> Alan Cox schrieb am 2009-11-04:
>   
>> Ed Schouten wrote:
>>     
>>> * Alan Cox <alc at cs.rice.edu> wrote:
>>>       
>
>   
>> For what it's worth, I believe that Solaris does the exact opposite.
>>     
>>>> They provide MAP_ANONYMOUS for compatibility.  It seems like a good
>>>> idea for us to do the same.
>>>>         
>
>
>   
>>> Something like this?
>>>       
>
>   
>>> Index: mman.h
>>> ===================================================================
>>> --- mman.h      (revision 198919)
>>> +++ mman.h      (working copy)
>>> @@ -82,6 +82,9 @@
>>> */
>>> #define        MAP_FILE         0x0000 /* map from file (default) */
>>> #define        MAP_ANON         0x1000 /* allocated from memory,
>>> swap space */
>>> +#ifndef _KERNEL
>>> +#define        MAP_ANONYMOUS    MAP_ANON /* For compatibility. */
>>> +#endif /* !_KERNEL */
>>> /*
>>> * Extended flags
>>>       
>
>
>
>   
>> Yes.  If no one objects in the next day or so, then please commit
>> this change.
>>     
>
>   
>> Alan
>>     
>
> should this compatibility addition be documented in the mmap(2) manual?
>
>   

I don't have a strong opinion one way or the other, but I would lean 
toward "yes".  That said, Solaris doesn't.

> any thoughts on the previous change request so mmap fails with MAP_ANON and
> pos=0?
>
>   

Unfortunately, no.  My FreeBSD time for the last few days has been spent 
looking into some anomalies in wiring memory and writing breakpoints.

Alan
 


More information about the freebsd-hackers mailing list