diff options
author | Florian Weimer <fweimer@redhat.com> | 2020-05-15 11:01:49 +0200 |
---|---|---|
committer | Florian Weimer <fweimer@redhat.com> | 2020-05-20 20:27:49 +0200 |
commit | 07a73d521988a7fdea1bb3c3b5bbb2b23a0da2e1 (patch) | |
tree | 98f7dc6b3c80ec12f8f5a2fa759bc03e09de453a /nptl/pthread_getattr_np.c | |
parent | 52302bc298c99dc0d2ca3d1b07b4349129babae3 (diff) | |
download | glibc-07a73d521988a7fdea1bb3c3b5bbb2b23a0da2e1.zip glibc-07a73d521988a7fdea1bb3c3b5bbb2b23a0da2e1.tar.gz glibc-07a73d521988a7fdea1bb3c3b5bbb2b23a0da2e1.tar.bz2 |
nptl: Move pthread_gettattr_np into libc
This is part of the libpthread removal project:
<https://sourceware.org/ml/libc-alpha/2019-10/msg00080.html>
Use __getline instead of __getdelim to avoid a localplt failure.
Likewise for __getrlimit/getrlimit.
The abilist updates were performed by:
git ls-files 'sysdeps/unix/sysv/linux/**/libc.abilist' \
| while read x ; do
echo "GLIBC_2.32 pthread_getattr_np F" >> $x
done
python3 scripts/move-symbol-to-libc.py --only-linux pthread_getattr_np
The private export of __pthread_getaffinity_np is no longer needed, but
the hidden alias still necessary so that the symbol can be exported with
versioned_symbol.
Reviewed-by: Carlos O'Donell <carlos@redhat.com>
Tested-by: Carlos O'Donell <carlos@redhat.com>
Diffstat (limited to 'nptl/pthread_getattr_np.c')
-rw-r--r-- | nptl/pthread_getattr_np.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/nptl/pthread_getattr_np.c b/nptl/pthread_getattr_np.c index 644548d..0e89113 100644 --- a/nptl/pthread_getattr_np.c +++ b/nptl/pthread_getattr_np.c @@ -30,7 +30,7 @@ int -pthread_getattr_np (pthread_t thread_id, pthread_attr_t *attr) +__pthread_getattr_np (pthread_t thread_id, pthread_attr_t *attr) { struct pthread *thread = (struct pthread *) thread_id; struct pthread_attr *iattr = (struct pthread_attr *) attr; @@ -84,7 +84,7 @@ pthread_getattr_np (pthread_t thread_id, pthread_attr_t *attr) /* We need the limit of the stack in any case. */ else { - if (getrlimit (RLIMIT_STACK, &rl) != 0) + if (__getrlimit (RLIMIT_STACK, &rl) != 0) ret = errno; else { @@ -115,7 +115,7 @@ pthread_getattr_np (pthread_t thread_id, pthread_attr_t *attr) while (! feof_unlocked (fp)) { - if (__getdelim (&line, &linelen, '\n', fp) <= 0) + if (__getline (&line, &linelen, fp) <= 0) break; uintptr_t from; @@ -208,3 +208,10 @@ pthread_getattr_np (pthread_t thread_id, pthread_attr_t *attr) return ret; } +versioned_symbol (libc, __pthread_getattr_np, pthread_getattr_np, GLIBC_2_32); + +#if SHLIB_COMPAT (libc, GLIBC_2_2_3, GLIBC_2_32) +strong_alias (__pthread_getattr_np, __pthread_getattr_np_alias) +compat_symbol (libc, __pthread_getattr_np_alias, + pthread_getattr_np, GLIBC_2_2_3); +#endif |