This is the mail archive of the libc-hacker@sources.redhat.com mailing list for the glibc project.

Note that libc-hacker is a closed list. You may look at the archives of this list, but subscription and posting are not open.


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: new syscall stub support for ia64 libc


On Thu, Oct 30, 2003 at 11:59:28AM -0800, David Mosberger wrote:
>   Jakub> IMHO NEED_DL_SYSINFO should be defined in both NPTL and
>   Jakub> Linuxthread ia64/dl-sysdep.h, while USE_DL_SYSINFO only in
>   Jakub> NPTL. And sysdep.h should use sysinfo only if USE_DL_SYSINFO is
>   Jakub> defined.  Then linuxthreads will work just fine (use break
>   Jakub> always, who cares) and NPTL will use VDSO.
> 
> But wouldn't this imply that non-threaded apps won't use the new
> stubs?  I'm probably missing something here.

No. In recent glibc's, you always have to use matching
libc.so+libpthread.so+librt.so, so you either use
libc.so+libpthread.so+librt.so from NPTL build, or from Linuxthreads
build. In Linuxthreads build non-threaded nor threaded apps won't use
the new stubs, just the dynamic linker will have support for them
(but won't use them). That is so that ld.so from Linuxthreads build
can load NPTL libc.so+libpthread.so+librt.so.
In NPTL build, both non-threaded and threaded apps will use the new
stubs after TLS is set up.

>   Jakub> This is handled on IA-32 by providing DL_SYSINFO_DEFAULT (and
>   Jakub> defining USE_DL_SYSINFO).  This means the few syscalls in
>   Jakub> DL_SYSDEP_OSCHECK will use the break insn and the rest will
>   Jakub> use VDSO if available.
> 
> OK, that behavior should be fine (especially if the DL_SYSDEP_OSCHECK
> can go away completely with the right libc config option).

DL_SYSDEP_OSCHECK is going away only if you configure glibc without
--enable-kernel=x.y.z.  Which is something you almost never want to do
in NPTL build.

	Jakub


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