glibc/sysdeps/unix/sysv/linux/bits
Florian Weimer aaacde11f2 Reduce <limits.h> pollution due to dynamic PTHREAD_STACK_MIN
<limits.h> used to be a header file with no declarations.
GCC's libgomp includes it in a #pragma GCC visibility hidden block.
Including <unistd.h> from <limits.h> (indirectly) declares everything
in <unistd.h> with hidden visibility, resulting in linker failures.

This commit avoids C declarations in assembler mode and only declares
__sysconf in <limits.h> (and not the entire contents of <unistd.h>).
The __sysconf symbol is already part of the ABI.  PTHREAD_STACK_MIN
is no longer defined for __USE_DYNAMIC_STACK_SIZE && __ASSEMBLER__
because there is no possible definition.

Additionally, PTHREAD_STACK_MIN is now defined by <pthread.h> for
__USE_MISC because this is what developers expect based on the macro
name.  It also helps to avoid libgomp linker failures in GCC because
libgomp includes <pthread.h> before its visibility hacks.

Reviewed-by: Carlos O'Donell <carlos@redhat.com>
2021-07-12 18:43:32 +02:00
..
types y2038: Use a common definition for shmid_ds 2021-06-15 10:42:11 -03:00
a.out.h Update. 2003-07-25 09:06:04 +00:00
dirent_ext.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
dirent.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
epoll.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
errno.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
eventfd.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
fcntl-linux.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
fcntl.h Update. 2000-09-01 07:14:30 +00:00
in.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
initspin.h Update. 2000-10-15 06:50:42 +00:00
inotify.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
ioctl-types.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
ioctls.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
ipc-perm.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
ipc.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
local_lim.h Reduce <limits.h> pollution due to dynamic PTHREAD_STACK_MIN 2021-07-12 18:43:32 +02:00
mman-linux.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
mman-map-flags-generic.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
mman-shared.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
mman.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
mqueue.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
msq.h y2038: Add support for 64-bit time on legacy ABIs 2021-06-15 10:42:11 -03:00
param.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
poll.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
posix_opt.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
procfs-extra.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
procfs-id.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
procfs-prregset.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
procfs.h Unify some sys/procfs.h headers. 2018-09-25 16:48:15 +00:00
pthread_stack_min-dynamic.h Reduce <limits.h> pollution due to dynamic PTHREAD_STACK_MIN 2021-07-12 18:43:32 +02:00
pthread_stack_min.h Define PTHREAD_STACK_MIN to sysconf(_SC_THREAD_STACK_MIN) 2021-07-09 15:10:35 -07:00
ptrace-shared.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
resource.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
sched.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
sem.h y2038: Add support for 64-bit time on legacy ABIs 2021-06-15 10:42:11 -03:00
semaphore.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
shm.h y2038: Add support for 64-bit time on legacy ABIs 2021-06-15 10:42:11 -03:00
shmlba.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
sigaction.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
sigcontext.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
sigevent-consts.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
siginfo-arch.h Remove __need macros from signal.h. 2017-05-20 19:04:43 -04:00
siginfo-consts-arch.h Remove __need macros from signal.h. 2017-05-20 19:04:43 -04:00
siginfo-consts.h Add SEGV_MTEAERR and SEGV_MTESERR from Linux 5.10. 2021-01-06 18:23:00 +00:00
signal_ext.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
signalfd.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
signum-arch.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
sigstack.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
sigstksz.h Define PTHREAD_STACK_MIN to sysconf(_SC_THREAD_STACK_MIN) 2021-07-09 15:10:35 -07:00
socket_type.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
socket-constants.h y2038: Add __USE_TIME_BITS64 support for socket-constants.h 2021-06-15 10:42:11 -03:00
socket.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
ss_flags.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
stat.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
statfs.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
statvfs.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
statx.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
struct_stat_time64_helper.h y2038: Use a common definition for stat 2021-06-15 10:42:11 -03:00
struct_stat.h y2038: Use a common definition for stat 2021-06-15 10:42:11 -03:00
termios-baud.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
termios-c_cc.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
termios-c_cflag.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
termios-c_iflag.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
termios-c_lflag.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
termios-c_oflag.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
termios-misc.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
termios-struct.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
termios-tcflow.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
termios.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
time.h y2038: Add support for 64-bit time on legacy ABIs 2021-06-15 10:42:11 -03:00
timerfd.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
timex.h y2038: linux: Add __USE_TIME_BITS64 support for struct timex 2021-06-15 10:42:11 -03:00
uio_lim.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
uio-ext.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
unistd_ext.h linux: Add close_range 2021-07-08 14:08:13 -03:00
utsname.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
waitflags.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00