Any particular reason why mmap family functions aren't hidden in ld.so?

H.J. Lu hjl.tools@gmail.com
Thu Oct 15 19:45:00 GMT 2015


On Thu, Oct 15, 2015 at 12:28 PM, Roland McGrath <roland@hack.frob.com> wrote:
>> All mmap family functions aren't hidden in ld.so and are called
>> via PLT.  Is this an oversight?
>
> It's necessary in the Hurd.  I don't know a reason for it elsewhere.  You

Why does Hurd need PLT?

> mean just that the compiler doesn't know they will be resolved without a
> PLT, right?  The linker doesn't actually produce PLT entries for them
> (except for Hurd).

To call mmap via PLT on i386, compiler has to set up EBX.  There is
no need for it if mmap is hidden.

-- 
H.J.



More information about the Libc-alpha mailing list