glibc/include
Lukasz Majewski 47f78f3683 y2038: Convert gai_suspend to support 64 bit time
This change uses (in gai_misc.h):
- __futex_abstimed_wait64 (instead of futex_reltimed_wait)
- __futex_abstimed_wait_cancellable64
    	(instead of futex_reltimed_wait_cancellable)
        from ./sysdeps/nptl/futex-helpers.h

The gai_suspend() accepts relative timeout, which then is converted to
absolute one.

The i686-gnu port (HURD) do not define DONT_NEED_GAI_MISC_COND and as it
doesn't (yet) support 64 bit time it uses not converted
pthread_cond_timedwait().

The __gai_suspend() is supposed to be run on ports with __TIMESIZE !=64 and
__WORDSIZE==32. It internally utilizes __gai_suspend_time64() and hence the
conversion from 32 bit struct timespec to 64 bit one is required.

For ports supporting 64 bit time the __gai_suspend_time64() will be used
either via alias (to __gai_suspend when __TIMESIZE==64) or redirection
(when -D_TIME_BITS=64 is passed).

Build tests:
./src/scripts/build-many-glibcs.py glibcs

Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
2020-12-04 10:04:38 +01:00
..
arpa
bits time: Add 64-bit time_t support for ftime 2020-10-27 09:54:50 -03:00
gnu
net
netinet nss_files: Consolidate line parse declarations in <nss_files.h> 2020-07-21 07:33:20 +02:00
programs
protocols
rpc nss_files: Consolidate line parse declarations in <nss_files.h> 2020-07-21 07:33:20 +02:00
rpcsvc Remove --enable-obsolete-nsl configure flag 2020-07-08 17:25:57 +02:00
sys hurd: Move {,f,l}xstat{,at} and xmknod{at} to compat symbols 2020-11-11 23:56:56 +00:00
aio.h y2038: Convert aio_suspend to support 64 bit time 2020-11-30 14:08:44 +01:00
aliases.h Remove --enable-obsolete-nsl configure flag 2020-07-08 17:25:57 +02:00
alloc_buffer.h
alloca.h
allocate_once.h
ar.h
argp-fmtstream.h
argp.h
argz.h
array_length.h
assert.h
atomic.h
byteswap.h
complex.h
cpio.h
crypt.h
ctype.h
des.h
dirent.h hurd: keep only required PLTs in ld.so 2020-11-11 02:36:22 +01:00
dlfcn.h Remove --enable-obsolete-nsl configure flag 2020-07-08 17:25:57 +02:00
dso_handle.h
elf.h
endian.h
envz.h
err.h
errno.h Remove tls.h inclusion from internal errno.h 2020-11-13 12:59:19 -03:00
error.h
execinfo.h
fcntl.h
features.h Prepare for glibc 2.32 release. 2020-08-04 22:17:00 -04:00
fenv.h
file_change_detection.h
float.h
fmtmsg.h
fnmatch.h
fpu_control.h
fstab.h
fts.h
ftw.h
gconv.h
getopt.h
getopt_int.h
glob.h
gmp.h
gnu-versions.h
grp-merge.h
grp.h nss_files: Consolidate line parse declarations in <nss_files.h> 2020-07-21 07:33:20 +02:00
gshadow.h nss_files: Consolidate line parse declarations in <nss_files.h> 2020-07-21 07:33:20 +02:00
iconv.h
ifaddrs.h
ifreq.h
ifunc-impl-list.h
inline-hashtab.h
intprops.h Sync intprops.h from Gnulib 2020-08-04 22:58:58 -07:00
inttypes.h
langinfo.h
lastlog.h
libc-diag.h
libc-internal.h hurd: keep only required PLTs in ld.so 2020-11-11 02:36:22 +01:00
libc-pointer-arith.h
libc-symbols.h symbols: Add defines for libanl's libanl_hidden_{def|proto} 2020-12-04 10:04:38 +01:00
libgen.h
libintl.h Document the internal _ and N_ macros 2020-05-06 17:35:40 +02:00
limits.h Add C2x BOOL_MAX and BOOL_WIDTH to limits.h. 2020-08-19 22:46:41 +00:00
link.h elf: Make __rtld_env_path_list and __rtld_search_dirs global variables 2020-10-08 17:12:28 +02:00
list.h
list_t.h
locale.h
loop_unroll.h
malloc.h
math-narrow-eval.h
math.h
mcheck.h
memory.h
mntent.h
monetary.h
mqueue.h
netdb.h y2038: Convert gai_suspend to support 64 bit time 2020-12-04 10:04:38 +01:00
netgroup.h
nl_types.h
nss.h
nss_files.h nss: Add __nss_fgetent_r 2020-07-21 07:33:50 +02:00
nsswitch.h
obstack.h
plural-exp.h
poll.h
printf.h
pthread.h
pty.h
pwd.h nss_files: Consolidate line parse declarations in <nss_files.h> 2020-07-21 07:33:20 +02:00
random-bits.h y2038: Replace __clock_gettime with __clock_gettime64 2020-05-20 16:45:16 +02:00
re_comp.h
regex.h
regexp.h
resolv.h
rounding-mode.h
rtld-malloc.h elf: Implement __rtld_malloc_is_complete 2020-10-08 11:00:42 +02:00
sched.h
scratch_buffer.h
search.h
set-hooks.h
setjmp.h hurd: keep only required PLTs in ld.so 2020-11-11 02:36:22 +01:00
sgtty.h
shadow.h nss_files: Consolidate line parse declarations in <nss_files.h> 2020-07-21 07:33:20 +02:00
shlib-compat.h Remove --enable-obsolete-rpc configure flag 2020-07-13 19:36:35 +02:00
signal.h hurd: keep only required PLTs in ld.so 2020-11-11 02:36:22 +01:00
spawn.h
stab.h
stackinfo.h
stap-probe.h
stdc-predef.h
stdint.h
stdio.h libio: Remove __libc_readline_unlocked 2020-07-21 07:34:50 +02:00
stdio_ext.h
stdlib.h hurd: keep only required PLTs in ld.so 2020-11-11 02:36:22 +01:00
string.h hurd: keep only required PLTs in ld.so 2020-11-11 02:36:22 +01:00
strings.h
struct___timeb64.h time: Add 64-bit time_t support for ftime 2020-10-27 09:54:50 -03:00
struct___timespec64.h
struct___timeval64.h y2038: include: Move struct __timeval64 definition to a separate file 2020-05-05 19:36:25 +02:00
stubs-prologue.h
syscall.h
sysexits.h
syslog.h
tar.h
termios.h
tgmath.h
time.h y2038: linux: Provide __time64 implementation 2020-10-19 16:01:37 +02:00
ttyent.h
uchar.h
ucontext.h
ulimit.h
unistd.h hurd: keep only required PLTs in ld.so 2020-11-11 02:36:22 +01:00
utime.h
utmp.h
values.h
verify.h
wait.h
wchar.h
wctype.h
wordexp.h