aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>2024-01-18 10:18:01 -0300
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>2024-04-02 15:28:36 -0300
commita4ed0471d71739928a0d0fa3258b3ff3b158e9b9 (patch)
treedb8118e3d4c787cdae80d343bb40bb7fc7ed2926
parenta0698a5e92ceeed3409d28623b1d599da6bc887d (diff)
downloadglibc-a4ed0471d71739928a0d0fa3258b3ff3b158e9b9.tar.xz
glibc-a4ed0471d71739928a0d0fa3258b3ff3b158e9b9.zip
Always define __USE_TIME_BITS64 when 64 bit time_t is used
It was raised on libc-help [1] that some Linux kernel interfaces expect the libc to define __USE_TIME_BITS64 to indicate the time_t size for the kABI. Different than defined by the initial y2038 design document [2], the __USE_TIME_BITS64 is only defined for ABIs that support more than one time_t size (by defining the _TIME_BITS for each module). The 64 bit time_t redirects are now enabled using a different internal define (__USE_TIME64_REDIRECTS). There is no expected change in semantic or code generation. Checked on x86_64-linux-gnu, i686-linux-gnu, aarch64-linux-gnu, and arm-linux-gnueabi [1] https://sourceware.org/pipermail/libc-help/2024-January/006557.html [2] https://sourceware.org/glibc/wiki/Y2038ProofnessDesign Reviewed-by: DJ Delorie <dj@redhat.com>
-rw-r--r--io/bits/poll2.h2
-rw-r--r--io/fcntl.h4
-rw-r--r--io/fts.h6
-rw-r--r--io/ftw.h12
-rw-r--r--io/sys/poll.h2
-rw-r--r--io/sys/stat.h16
-rw-r--r--io/utime.h4
-rw-r--r--manual/creature.texi6
-rw-r--r--manual/maint.texi4
-rw-r--r--misc/sys/ioctl.h2
-rw-r--r--misc/sys/select.h4
-rw-r--r--posix/glob.h4
-rw-r--r--posix/sched.h2
-rw-r--r--posix/sys/wait.h4
-rw-r--r--resolv/netdb.h2
-rw-r--r--resource/sys/resource.h2
-rw-r--r--rt/aio.h4
-rw-r--r--rt/mqueue.h2
-rw-r--r--signal/signal.h2
-rw-r--r--socket/sys/socket.h14
-rw-r--r--support/timespec.h2
-rw-r--r--support/xtime.h2
-rw-r--r--support/xunistd.h2
-rw-r--r--sysdeps/generic/features-time64.h19
-rw-r--r--sysdeps/nptl/pthread.h18
-rw-r--r--sysdeps/pthread/semaphore.h4
-rw-r--r--sysdeps/pthread/threads.h6
-rw-r--r--sysdeps/unix/sysv/linux/arm/bits/struct_stat.h8
-rw-r--r--sysdeps/unix/sysv/linux/bits/socket-constants.h2
-rw-r--r--sysdeps/unix/sysv/linux/bits/time.h2
-rw-r--r--sysdeps/unix/sysv/linux/bits/timex.h2
-rw-r--r--sysdeps/unix/sysv/linux/bits/types/struct_msqid_ds.h2
-rw-r--r--sysdeps/unix/sysv/linux/bits/types/struct_semid_ds.h2
-rw-r--r--sysdeps/unix/sysv/linux/bits/types/struct_shmid_ds.h2
-rw-r--r--sysdeps/unix/sysv/linux/csky/bits/struct_stat.h4
-rw-r--r--sysdeps/unix/sysv/linux/features-time64.h9
-rw-r--r--sysdeps/unix/sysv/linux/hppa/bits/socket-constants.h2
-rw-r--r--sysdeps/unix/sysv/linux/hppa/bits/struct_stat.h8
-rw-r--r--sysdeps/unix/sysv/linux/hppa/bits/types/struct_msqid_ds.h2
-rw-r--r--sysdeps/unix/sysv/linux/hppa/bits/types/struct_semid_ds.h2
-rw-r--r--sysdeps/unix/sysv/linux/hppa/bits/types/struct_shmid_ds.h2
-rw-r--r--sysdeps/unix/sysv/linux/m68k/bits/struct_stat.h8
-rw-r--r--sysdeps/unix/sysv/linux/microblaze/bits/struct_stat.h12
-rw-r--r--sysdeps/unix/sysv/linux/mips/bits/socket-constants.h2
-rw-r--r--sysdeps/unix/sysv/linux/mips/bits/struct_stat.h14
-rw-r--r--sysdeps/unix/sysv/linux/mips/bits/types/struct_msqid_ds.h2
-rw-r--r--sysdeps/unix/sysv/linux/mips/bits/types/struct_semid_ds.h2
-rw-r--r--sysdeps/unix/sysv/linux/mips/bits/types/struct_shmid_ds.h2
-rw-r--r--sysdeps/unix/sysv/linux/nios2/bits/struct_stat.h4
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/bits/socket-constants.h2
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/bits/struct_stat.h8
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/bits/types/struct_msqid_ds.h2
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/bits/types/struct_semid_ds.h2
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/bits/types/struct_shmid_ds.h2
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/struct_stat.h4
-rw-r--r--sysdeps/unix/sysv/linux/sh/bits/struct_stat.h8
-rw-r--r--sysdeps/unix/sysv/linux/sparc/bits/socket-constants.h2
-rw-r--r--sysdeps/unix/sysv/linux/sparc/bits/struct_stat.h8
-rw-r--r--sysdeps/unix/sysv/linux/sparc/bits/types/struct_msqid_ds.h2
-rw-r--r--sysdeps/unix/sysv/linux/sparc/bits/types/struct_semid_ds.h2
-rw-r--r--sysdeps/unix/sysv/linux/sparc/bits/types/struct_shmid_ds.h2
-rw-r--r--sysdeps/unix/sysv/linux/sys/epoll.h2
-rw-r--r--sysdeps/unix/sysv/linux/sys/prctl.h2
-rw-r--r--sysdeps/unix/sysv/linux/sys/timerfd.h4
-rw-r--r--sysdeps/unix/sysv/linux/sys/timex.h2
-rw-r--r--sysdeps/unix/sysv/linux/x86/bits/struct_stat.h8
-rw-r--r--sysdeps/unix/sysv/linux/x86/bits/types/struct_semid_ds.h2
-rw-r--r--sysvipc/sys/msg.h2
-rw-r--r--sysvipc/sys/sem.h4
-rw-r--r--sysvipc/sys/shm.h2
-rw-r--r--time/bits/types/struct_timespec.h4
-rw-r--r--time/bits/types/struct_timeval.h2
-rw-r--r--time/bits/types/time_t.h2
-rw-r--r--time/sys/time.h10
-rw-r--r--time/time.h24
75 files changed, 178 insertions, 182 deletions
diff --git a/io/bits/poll2.h b/io/bits/poll2.h
index 24ec1056eb..ca9d58badd 100644
--- a/io/bits/poll2.h
+++ b/io/bits/poll2.h
@@ -48,7 +48,7 @@ poll (__fortify_clang_overload_arg (struct pollfd *, ,__fds), nfds_t __nfds,
#ifdef __USE_GNU
-# ifdef __USE_TIME_BITS64
+# ifdef __USE_TIME64_REDIRECTS
extern int __REDIRECT (__ppoll64_alias, (struct pollfd *__fds, nfds_t __nfds,
const struct timespec *__timeout,
const __sigset_t *__ss), __ppoll64);
diff --git a/io/fcntl.h b/io/fcntl.h
index 38aa12d7f2..f157991782 100644
--- a/io/fcntl.h
+++ b/io/fcntl.h
@@ -172,7 +172,7 @@ typedef __pid_t pid_t;
This function is a cancellation point and therefore not marked with
__THROW. */
-#ifndef __USE_TIME_BITS64
+#ifndef __USE_TIME64_REDIRECTS
# ifndef __USE_FILE_OFFSET64
extern int fcntl (int __fd, int __cmd, ...);
# else
@@ -185,7 +185,7 @@ extern int __REDIRECT (fcntl, (int __fd, int __cmd, ...), fcntl64);
# ifdef __USE_LARGEFILE64
extern int fcntl64 (int __fd, int __cmd, ...);
# endif
-#else /* __USE_TIME_BITS64 */
+#else /* __USE_TIME64_REDIRECTS */
# ifdef __REDIRECT
extern int __REDIRECT_NTH (fcntl, (int __fd, int __request, ...),
__fcntl_time64);
diff --git a/io/fts.h b/io/fts.h
index 61f95bb441..97a031ebbd 100644
--- a/io/fts.h
+++ b/io/fts.h
@@ -187,7 +187,7 @@ FTSENT *fts_read (FTS *);
int fts_set (FTS *, FTSENT *, int) __THROW;
#else
# ifdef __REDIRECT
-# ifndef __USE_TIME_BITS64
+# ifndef __USE_TIME64_REDIRECTS
FTSENT *__REDIRECT (fts_children, (FTS *, int), fts64_children);
int __REDIRECT (fts_close, (FTS *), fts64_close);
FTS *__REDIRECT (fts_open, (char * const *, int,
@@ -206,7 +206,7 @@ int __REDIRECT_NTH (fts_set, (FTS *, FTSENT *, int),
__fts64_set_time64);
# endif
# else
-# ifndef __USE_TIME_BITS64
+# ifndef __USE_TIME64_REDIRECTS
# define fts_children fts64_children
# define fts_close fts64_close
# define fts_open fts64_open
@@ -217,7 +217,7 @@ int __REDIRECT_NTH (fts_set, (FTS *, FTSENT *, int),
# endif
#endif
#ifdef __USE_LARGEFILE64
-# ifndef __USE_TIME_BITS64
+# ifndef __USE_TIME64_REDIRECTS
FTSENT64 *fts64_children (FTS64 *, int);
int fts64_close (FTS64 *);
FTS64 *fts64_open (char * const *, int,
diff --git a/io/ftw.h b/io/ftw.h
index e4d1b84d53..39cf595b27 100644
--- a/io/ftw.h
+++ b/io/ftw.h
@@ -137,7 +137,7 @@ extern int ftw (const char *__dir, __ftw_func_t __func, int __descriptors)
__nonnull ((1, 2));
#else
# ifdef __REDIRECT
-# ifndef __USE_TIME_BITS64
+# ifndef __USE_TIME64_REDIRECTS
extern int __REDIRECT (ftw, (const char *__dir, __ftw_func_t __func,
int __descriptors), ftw64) __nonnull ((1, 2));
# else
@@ -146,7 +146,7 @@ extern int __REDIRECT (ftw, (const char *__dir, __ftw_func_t __func,
__nonnull ((1, 2));
# endif
# else
-# ifndef __USE_TIME_BITS64
+# ifndef __USE_TIME64_REDIRECTS
# define ftw ftw64
# else
# define ftw __ftw64_time64
@@ -154,7 +154,7 @@ extern int __REDIRECT (ftw, (const char *__dir, __ftw_func_t __func,
# endif
#endif
#ifdef __USE_LARGEFILE64
-# ifndef __USE_TIME_BITS64
+# ifndef __USE_TIME64_REDIRECTS
extern int ftw64 (const char *__dir, __ftw64_func_t __func,
int __descriptors) __nonnull ((1, 2));
# else
@@ -180,7 +180,7 @@ extern int nftw (const char *__dir, __nftw_func_t __func, int __descriptors,
int __flag) __nonnull ((1, 2));
# else
# ifdef __REDIRECT
-# ifndef __USE_TIME_BITS64
+# ifndef __USE_TIME64_REDIRECTS
extern int __REDIRECT (nftw, (const char *__dir, __nftw_func_t __func,
int __descriptors, int __flag), nftw64)
__nonnull ((1, 2));
@@ -190,7 +190,7 @@ extern int __REDIRECT (nftw, (const char *__dir, __nftw_func_t __func,
__nonnull ((1, 2));
# endif
# else
-# ifndef __USE_TIME_BITS64
+# ifndef __USE_TIME64_REDIRECTS
# define nftw nftw64
# else
#