This is the mail archive of the libc-alpha@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: [PATCH v32] Avoid cancellable I/O primitives in ld.so.


On Wed, Jun 6, 2018 at 4:38 PM, Adhemerval Zanella
<adhemerval.zanella@linaro.org> wrote:
> On 06/06/2018 17:28, Zack Weinberg wrote:
>> If I put these in libpthread-routines, they
>> will get the wrong treatment from nptl/Makefile, namely, they'll be
>> put into libpthread.a unnecessarily.
>>
>> ... Having said that, x86-64 at least doesn't export any _nocancel
>> functions from libpthread, which may mean we don't need these at all.
>> Will experiment and report back.
>>
>> zw
>
> The nocancel variants are used on libpthread symbols, not really to on
> wrappers:
>
>   * __open64_nocancel, __read_nocancel, __write_nocancel, __close_nocancel
>     are used on unix/sysv/linux/pthread_{get,set}name.c.
>   * __pause_nocancel is used on nptl/pthread_mutex_lock.c.
>   * __nanosleep_nocancel is used on nptl/pthread_mutex_timedlock.c.

They should be able to call the definitions in libc.so (possibly we
will need to add GLIBC_PRIVATE exports).

> I think adding them on libpthread-routines is exactly what we want.

Again, this will cause them to be unnecessarily included in libpthread.a.


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