This is the mail archive of the libc-help@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: libc_hidden & weak_alias mechanism in vfork/clone/..


Hi Carlos,
Carlos O'Donell wrote,

> On 05/30/2018 07:30 PM, Waldemar Brodkorb wrote:
> > Hello glibc hackers,
> > 
> > I would like to understand why GNU C Library is using a lot of weak
> > aliases for C library functions like vfork or clone.
> > 
> > What is the reason for it?
> > 
> > Or in this case the assembly function name is __libc_vfork and
> > __vfork and vfork is somehow involved.
> > https://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/unix/sysv/linux/riscv/vfork.S;h=6c53e93a928d736be73161954fd83bdb0672fd4f;hb=HEAD
> 
> Does this answer your question?
> 
> https://sourceware.org/glibc/wiki/Style_and_Conventions#Double-underscore_names_for_public_API_functions

Thanks, mostly.
Does this mean that in vfork.S all two conventions are used in
combination to avoid namespace pollution and gather better
performance by avoiding internal function calls via PLT?

There are three symbols involved:
__libc_vfork()
__vfork()
vfork()

best regards
 Waldemar


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]