1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-07-29 11:41:21 +03:00

linux: Move ftrylockfile/_IO_ftrylockfile into libc

The nptl version is used as default, since now with symbol always
present the single-thread optimization is tricky.

Hurd is not change, it is used it own lock scheme (which call
 _cthreads_ftrylockfile).

Checked on x86_64-linux-gnu.
This commit is contained in:
Adhemerval Zanella
2021-05-06 16:01:15 -03:00
parent 7b4e7ca9db
commit e874d3d189
32 changed files with 3 additions and 94 deletions

View File

@ -179,7 +179,6 @@ libpthread-routines = \
cleanup \
cleanup_defer \
events \
ftrylockfile \
funlockfile \
libpthread-compat \
nptl-init \

View File

@ -17,14 +17,13 @@
<https://www.gnu.org/licenses/>. */
#include <stdio.h>
#undef _IO_ftrylockfile
#include <stdio-lock.h>
#include <sys/single_threaded.h>
int
__ftrylockfile (FILE *stream)
{
/* Do nothing. Using this version does not do any locking. */
return 1;
return _IO_lock_trylock (*stream->_lock);
}
weak_alias (__ftrylockfile, ftrylockfile);
weak_alias (__ftrylockfile, _IO_ftrylockfile)

View File

@ -1,31 +0,0 @@
/* Copyright (C) 2002-2021 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
#include <errno.h>
#include <pthread.h>
#include <stdio.h>
#include <stdio-lock.h>
int
__ftrylockfile (FILE *stream)
{
return _IO_lock_trylock (*stream->_lock);
}
strong_alias (__ftrylockfile, _IO_ftrylockfile)
weak_alias (__ftrylockfile, ftrylockfile)

View File

@ -1,11 +1,9 @@
GLIBC_2.17 _IO_ftrylockfile F
GLIBC_2.17 _IO_funlockfile F
GLIBC_2.17 __errno_location F
GLIBC_2.17 __pthread_register_cancel F
GLIBC_2.17 __pthread_register_cancel_defer F
GLIBC_2.17 __pthread_unregister_cancel F
GLIBC_2.17 __pthread_unregister_cancel_restore F
GLIBC_2.17 ftrylockfile F
GLIBC_2.17 funlockfile F
GLIBC_2.17 pthread_attr_getaffinity_np F
GLIBC_2.17 pthread_attr_getguardsize F

View File

@ -1,7 +1,5 @@
GLIBC_2.0 _IO_ftrylockfile F
GLIBC_2.0 _IO_funlockfile F
GLIBC_2.0 __errno_location F
GLIBC_2.0 ftrylockfile F
GLIBC_2.0 funlockfile F
GLIBC_2.0 pthread_cancel F
GLIBC_2.0 pthread_create F

View File

@ -1,11 +1,9 @@
GLIBC_2.32 _IO_ftrylockfile F
GLIBC_2.32 _IO_funlockfile F
GLIBC_2.32 __errno_location F
GLIBC_2.32 __pthread_register_cancel F
GLIBC_2.32 __pthread_register_cancel_defer F
GLIBC_2.32 __pthread_unregister_cancel F
GLIBC_2.32 __pthread_unregister_cancel_restore F
GLIBC_2.32 ftrylockfile F
GLIBC_2.32 funlockfile F
GLIBC_2.32 pthread_attr_getaffinity_np F
GLIBC_2.32 pthread_attr_getguardsize F

View File

@ -8,7 +8,6 @@ GLIBC_2.28 thrd_detach F
GLIBC_2.28 thrd_join F
GLIBC_2.30 __libpthread_version_placeholder F
GLIBC_2.31 pthread_clockjoin_np F
GLIBC_2.4 _IO_ftrylockfile F
GLIBC_2.4 _IO_funlockfile F
GLIBC_2.4 __errno_location F
GLIBC_2.4 __libpthread_version_placeholder F
@ -16,7 +15,6 @@ GLIBC_2.4 __pthread_register_cancel F
GLIBC_2.4 __pthread_register_cancel_defer F
GLIBC_2.4 __pthread_unregister_cancel F
GLIBC_2.4 __pthread_unregister_cancel_restore F
GLIBC_2.4 ftrylockfile F
GLIBC_2.4 funlockfile F
GLIBC_2.4 pthread_attr_getaffinity_np F
GLIBC_2.4 pthread_attr_getguardsize F

View File

@ -8,7 +8,6 @@ GLIBC_2.28 thrd_detach F
GLIBC_2.28 thrd_join F
GLIBC_2.30 __libpthread_version_placeholder F
GLIBC_2.31 pthread_clockjoin_np F
GLIBC_2.4 _IO_ftrylockfile F
GLIBC_2.4 _IO_funlockfile F
GLIBC_2.4 __errno_location F
GLIBC_2.4 __libpthread_version_placeholder F
@ -16,7 +15,6 @@ GLIBC_2.4 __pthread_register_cancel F
GLIBC_2.4 __pthread_register_cancel_defer F
GLIBC_2.4 __pthread_unregister_cancel F
GLIBC_2.4 __pthread_unregister_cancel_restore F
GLIBC_2.4 ftrylockfile F
GLIBC_2.4 funlockfile F
GLIBC_2.4 pthread_attr_getaffinity_np F
GLIBC_2.4 pthread_attr_getguardsize F

View File

@ -1,11 +1,9 @@
GLIBC_2.29 _IO_ftrylockfile F
GLIBC_2.29 _IO_funlockfile F
GLIBC_2.29 __errno_location F
GLIBC_2.29 __pthread_register_cancel F
GLIBC_2.29 __pthread_register_cancel_defer F
GLIBC_2.29 __pthread_unregister_cancel F
GLIBC_2.29 __pthread_unregister_cancel_restore F
GLIBC_2.29 ftrylockfile F
GLIBC_2.29 funlockfile F
GLIBC_2.29 pthread_attr_getaffinity_np F
GLIBC_2.29 pthread_attr_getguardsize F

View File

@ -3,10 +3,8 @@ GLIBC_2.12 pthread_getname_np F
GLIBC_2.12 pthread_setname_np F
GLIBC_2.18 pthread_getattr_default_np F
GLIBC_2.18 pthread_setattr_default_np F
GLIBC_2.2 _IO_ftrylockfile F
GLIBC_2.2 _IO_funlockfile F
GLIBC_2.2 __errno_location F
GLIBC_2.2 ftrylockfile F
GLIBC_2.2 funlockfile F
GLIBC_2.2 pthread_attr_getguardsize F
GLIBC_2.2 pthread_attr_getstack F

View File

@ -1,7 +1,5 @@
GLIBC_2.0 _IO_ftrylockfile F
GLIBC_2.0 _IO_funlockfile F
GLIBC_2.0 __errno_location F
GLIBC_2.0 ftrylockfile F
GLIBC_2.0 funlockfile F
GLIBC_2.0 pthread_cancel F
GLIBC_2.0 pthread_create F

View File

@ -3,10 +3,8 @@ GLIBC_2.12 pthread_getname_np F
GLIBC_2.12 pthread_setname_np F
GLIBC_2.18 pthread_getattr_default_np F
GLIBC_2.18 pthread_setattr_default_np F
GLIBC_2.2 _IO_ftrylockfile F
GLIBC_2.2 _IO_funlockfile F
GLIBC_2.2 __errno_location F
GLIBC_2.2 ftrylockfile F
GLIBC_2.2 funlockfile F
GLIBC_2.2 pthread_attr_getguardsize F
GLIBC_2.2 pthread_attr_getstack F

View File

@ -8,7 +8,6 @@ GLIBC_2.28 thrd_detach F
GLIBC_2.28 thrd_join F
GLIBC_2.30 __libpthread_version_placeholder F
GLIBC_2.31 pthread_clockjoin_np F
GLIBC_2.4 _IO_ftrylockfile F
GLIBC_2.4 _IO_funlockfile F
GLIBC_2.4 __errno_location F
GLIBC_2.4 __libpthread_version_placeholder F
@ -16,7 +15,6 @@ GLIBC_2.4 __pthread_register_cancel F
GLIBC_2.4 __pthread_register_cancel_defer F
GLIBC_2.4 __pthread_unregister_cancel F
GLIBC_2.4 __pthread_unregister_cancel_restore F
GLIBC_2.4 ftrylockfile F
GLIBC_2.4 funlockfile F
GLIBC_2.4 pthread_attr_getaffinity_np F
GLIBC_2.4 pthread_attr_getguardsize F

View File

@ -1,7 +1,5 @@
GLIBC_2.0 _IO_ftrylockfile F
GLIBC_2.0 _IO_funlockfile F
GLIBC_2.0 __errno_location F
GLIBC_2.0 ftrylockfile F
GLIBC_2.0 funlockfile F
GLIBC_2.0 pthread_cancel F
GLIBC_2.0 pthread_create F

View File

@ -1,11 +1,9 @@
GLIBC_2.18 _IO_ftrylockfile F
GLIBC_2.18 _IO_funlockfile F
GLIBC_2.18 __errno_location F
GLIBC_2.18 __pthread_register_cancel F
GLIBC_2.18 __pthread_register_cancel_defer F
GLIBC_2.18 __pthread_unregister_cancel F
GLIBC_2.18 __pthread_unregister_cancel_restore F
GLIBC_2.18 ftrylockfile F
GLIBC_2.18 funlockfile F
GLIBC_2.18 pthread_attr_getaffinity_np F
GLIBC_2.18 pthread_attr_getguardsize F

View File

@ -1,11 +1,9 @@
GLIBC_2.18 _IO_ftrylockfile F
GLIBC_2.18 _IO_funlockfile F
GLIBC_2.18 __errno_location F
GLIBC_2.18 __pthread_register_cancel F
GLIBC_2.18 __pthread_register_cancel_defer F
GLIBC_2.18 __pthread_unregister_cancel F
GLIBC_2.18 __pthread_unregister_cancel_restore F
GLIBC_2.18 ftrylockfile F
GLIBC_2.18 funlockfile F
GLIBC_2.18 pthread_attr_getaffinity_np F
GLIBC_2.18 pthread_attr_getguardsize F

View File

@ -1,7 +1,5 @@
GLIBC_2.0 _IO_ftrylockfile F
GLIBC_2.0 _IO_funlockfile F
GLIBC_2.0 __errno_location F
GLIBC_2.0 ftrylockfile F
GLIBC_2.0 funlockfile F
GLIBC_2.0 pthread_cancel F
GLIBC_2.0 pthread_create F

View File

@ -1,7 +1,5 @@
GLIBC_2.0 _IO_ftrylockfile F
GLIBC_2.0 _IO_funlockfile F
GLIBC_2.0 __errno_location F
GLIBC_2.0 ftrylockfile F
GLIBC_2.0 funlockfile F
GLIBC_2.0 pthread_cancel F
GLIBC_2.0 pthread_create F

View File

@ -1,11 +1,9 @@
GLIBC_2.21 _IO_ftrylockfile F
GLIBC_2.21 _IO_funlockfile F
GLIBC_2.21 __errno_location F
GLIBC_2.21 __pthread_register_cancel F
GLIBC_2.21 __pthread_register_cancel_defer F
GLIBC_2.21 __pthread_unregister_cancel F
GLIBC_2.21 __pthread_unregister_cancel_restore F
GLIBC_2.21 ftrylockfile F
GLIBC_2.21 funlockfile F
GLIBC_2.21 pthread_attr_getaffinity_np F
GLIBC_2.21 pthread_attr_getguardsize F

View File

@ -1,7 +1,5 @@
GLIBC_2.0 _IO_ftrylockfile F
GLIBC_2.0 _IO_funlockfile F
GLIBC_2.0 __errno_location F
GLIBC_2.0 ftrylockfile F
GLIBC_2.0 funlockfile F
GLIBC_2.0 pthread_cancel F
GLIBC_2.0 pthread_create F

View File

@ -6,10 +6,8 @@ GLIBC_2.18 pthread_setattr_default_np F
GLIBC_2.28 thrd_create F
GLIBC_2.28 thrd_detach F
GLIBC_2.28 thrd_join F
GLIBC_2.3 _IO_ftrylockfile F
GLIBC_2.3 _IO_funlockfile F
GLIBC_2.3 __errno_location F
GLIBC_2.3 ftrylockfile F
GLIBC_2.3 funlockfile F
GLIBC_2.3 pthread_attr_getguardsize F
GLIBC_2.3 pthread_attr_getstack F

View File

@ -1,11 +1,9 @@
GLIBC_2.17 _IO_ftrylockfile F
GLIBC_2.17 _IO_funlockfile F
GLIBC_2.17 __errno_location F
GLIBC_2.17 __pthread_register_cancel F
GLIBC_2.17 __pthread_register_cancel_defer F
GLIBC_2.17 __pthread_unregister_cancel F
GLIBC_2.17 __pthread_unregister_cancel_restore F
GLIBC_2.17 ftrylockfile F
GLIBC_2.17 funlockfile F
GLIBC_2.17 pthread_attr_getaffinity_np F
GLIBC_2.17 pthread_attr_getguardsize F

View File

@ -1,11 +1,9 @@
GLIBC_2.33 _IO_ftrylockfile F
GLIBC_2.33 _IO_funlockfile F
GLIBC_2.33 __errno_location F
GLIBC_2.33 __pthread_register_cancel F
GLIBC_2.33 __pthread_register_cancel_defer F
GLIBC_2.33 __pthread_unregister_cancel F
GLIBC_2.33 __pthread_unregister_cancel_restore F
GLIBC_2.33 ftrylockfile F
GLIBC_2.33 funlockfile F
GLIBC_2.33 pthread_attr_getaffinity_np F
GLIBC_2.33 pthread_attr_getguardsize F

View File

@ -1,11 +1,9 @@
GLIBC_2.27 _IO_ftrylockfile F
GLIBC_2.27 _IO_funlockfile F
GLIBC_2.27 __errno_location F
GLIBC_2.27 __pthread_register_cancel F
GLIBC_2.27 __pthread_register_cancel_defer F
GLIBC_2.27 __pthread_unregister_cancel F
GLIBC_2.27 __pthread_unregister_cancel_restore F
GLIBC_2.27 ftrylockfile F
GLIBC_2.27 funlockfile F
GLIBC_2.27 pthread_attr_getaffinity_np F
GLIBC_2.27 pthread_attr_getguardsize F

View File

@ -1,7 +1,5 @@
GLIBC_2.0 _IO_ftrylockfile F
GLIBC_2.0 _IO_funlockfile F
GLIBC_2.0 __errno_location F
GLIBC_2.0 ftrylockfile F
GLIBC_2.0 funlockfile F
GLIBC_2.0 pthread_cancel F
GLIBC_2.0 pthread_create F

View File

@ -4,10 +4,8 @@ GLIBC_2.12 pthread_setname_np F
GLIBC_2.18 pthread_getattr_default_np F
GLIBC_2.18 pthread_setattr_default_np F
GLIBC_2.19 __libpthread_version_placeholder F
GLIBC_2.2 _IO_ftrylockfile F
GLIBC_2.2 _IO_funlockfile F
GLIBC_2.2 __errno_location F
GLIBC_2.2 ftrylockfile F
GLIBC_2.2 funlockfile F
GLIBC_2.2 pthread_attr_getguardsize F
GLIBC_2.2 pthread_attr_getstack F

View File

@ -3,10 +3,8 @@ GLIBC_2.12 pthread_getname_np F
GLIBC_2.12 pthread_setname_np F
GLIBC_2.18 pthread_getattr_default_np F
GLIBC_2.18 pthread_setattr_default_np F
GLIBC_2.2 _IO_ftrylockfile F
GLIBC_2.2 _IO_funlockfile F
GLIBC_2.2 __errno_location F
GLIBC_2.2 ftrylockfile F
GLIBC_2.2 funlockfile F
GLIBC_2.2 pthread_attr_getguardsize F
GLIBC_2.2 pthread_attr_getstack F

View File

@ -3,10 +3,8 @@ GLIBC_2.12 pthread_getname_np F
GLIBC_2.12 pthread_setname_np F
GLIBC_2.18 pthread_getattr_default_np F
GLIBC_2.18 pthread_setattr_default_np F
GLIBC_2.2 _IO_ftrylockfile F
GLIBC_2.2 _IO_funlockfile F
GLIBC_2.2 __errno_location F
GLIBC_2.2 ftrylockfile F
GLIBC_2.2 funlockfile F
GLIBC_2.2 pthread_attr_getguardsize F
GLIBC_2.2 pthread_attr_getstack F

View File

@ -1,7 +1,5 @@
GLIBC_2.0 _IO_ftrylockfile F
GLIBC_2.0 _IO_funlockfile F
GLIBC_2.0 __errno_location F
GLIBC_2.0 ftrylockfile F
GLIBC_2.0 funlockfile F
GLIBC_2.0 pthread_cancel F
GLIBC_2.0 pthread_create F

View File

@ -3,10 +3,8 @@ GLIBC_2.12 pthread_getname_np F
GLIBC_2.12 pthread_setname_np F
GLIBC_2.18 pthread_getattr_default_np F
GLIBC_2.18 pthread_setattr_default_np F
GLIBC_2.2 _IO_ftrylockfile F
GLIBC_2.2 _IO_funlockfile F
GLIBC_2.2 __errno_location F
GLIBC_2.2 ftrylockfile F
GLIBC_2.2 funlockfile F
GLIBC_2.2 pthread_attr_getguardsize F
GLIBC_2.2 pthread_attr_getstack F

View File

@ -3,10 +3,8 @@ GLIBC_2.12 pthread_getname_np F
GLIBC_2.12 pthread_setname_np F
GLIBC_2.18 pthread_getattr_default_np F
GLIBC_2.18 pthread_setattr_default_np F
GLIBC_2.2.5 _IO_ftrylockfile F
GLIBC_2.2.5 _IO_funlockfile F
GLIBC_2.2.5 __errno_location F
GLIBC_2.2.5 ftrylockfile F
GLIBC_2.2.5 funlockfile F
GLIBC_2.2.5 pthread_attr_getguardsize F
GLIBC_2.2.5 pthread_attr_getstack F

View File

@ -1,11 +1,9 @@
GLIBC_2.16 _IO_ftrylockfile F
GLIBC_2.16 _IO_funlockfile F
GLIBC_2.16 __errno_location F
GLIBC_2.16 __pthread_register_cancel F
GLIBC_2.16 __pthread_register_cancel_defer F
GLIBC_2.16 __pthread_unregister_cancel F
GLIBC_2.16 __pthread_unregister_cancel_restore F
GLIBC_2.16 ftrylockfile F
GLIBC_2.16 funlockfile F
GLIBC_2.16 pthread_attr_getaffinity_np F
GLIBC_2.16 pthread_attr_getguardsize F