From: Carlos O'Donell <carlos@redhat.com>
To: Adhemerval Zanella <adhemerval.zanella@linaro.org>,
libc-alpha@sourceware.org
Subject: Re: [PATCH v2 21/25] io: Add fts64 with 64 bit time_t support
Date: Fri, 4 Jun 2021 15:39:19 -0400 [thread overview]
Message-ID: <5c6d5a39-2035-14b8-e1cc-4298e7124bae@redhat.com> (raw)
In-Reply-To: <20210518205613.1487824-22-adhemerval.zanella@linaro.org>
On 5/18/21 4:56 PM, Adhemerval Zanella wrote:
> Similar to glob, fts routines passes a stat pointer that might
> differ of size and layout when 64 bit time API is used.
LGTM.
No regressions on x86_64, i686, ppc64le, aarch64, s390x.
Reviewed-by: Carlos O'Donell <carlos@redhat.com>
Tested-by: Carlos O'Donell <carlos@redhat.com>
> Checked on i686-linux-gnu and x86_64-linux-gnu.
> ---
> include/fts.h | 51 +++++++++++++++++++
> io/Makefile | 4 +-
> io/fts.h | 43 ++++++++++++++--
> io/fts64-time64.c | 35 +++++++++++++
> sysdeps/unix/sysv/linux/Versions | 5 ++
> sysdeps/unix/sysv/linux/arm/be/libc.abilist | 5 ++
> sysdeps/unix/sysv/linux/arm/le/libc.abilist | 5 ++
> sysdeps/unix/sysv/linux/csky/libc.abilist | 5 ++
> sysdeps/unix/sysv/linux/hppa/libc.abilist | 5 ++
> sysdeps/unix/sysv/linux/i386/libc.abilist | 5 ++
> .../sysv/linux/m68k/coldfire/libc.abilist | 5 ++
> .../unix/sysv/linux/m68k/m680x0/libc.abilist | 5 ++
> .../sysv/linux/microblaze/be/libc.abilist | 5 ++
> .../sysv/linux/microblaze/le/libc.abilist | 5 ++
> .../sysv/linux/mips/mips32/fpu/libc.abilist | 5 ++
> .../sysv/linux/mips/mips32/nofpu/libc.abilist | 5 ++
> .../sysv/linux/mips/mips64/n32/libc.abilist | 5 ++
> sysdeps/unix/sysv/linux/nios2/libc.abilist | 5 ++
> .../linux/powerpc/powerpc32/fpu/libc.abilist | 5 ++
> .../powerpc/powerpc32/nofpu/libc.abilist | 5 ++
> .../unix/sysv/linux/s390/s390-32/libc.abilist | 5 ++
> sysdeps/unix/sysv/linux/sh/be/libc.abilist | 5 ++
> sysdeps/unix/sysv/linux/sh/le/libc.abilist | 5 ++
> .../sysv/linux/sparc/sparc32/libc.abilist | 5 ++
> 24 files changed, 227 insertions(+), 6 deletions(-)
> create mode 100644 io/fts64-time64.c
>
> diff --git a/include/fts.h b/include/fts.h
> index 145dce6779..ea36a9b9be 100644
> --- a/include/fts.h
> +++ b/include/fts.h
> @@ -1 +1,52 @@
> +#ifndef _FTS_H
> #include <io/fts.h>
> +
> +#ifndef _ISOMAC
> +# if __TIMESIZE != 64
> +# include <sys/stat.h>
> +
> +typedef struct
> +{
> + struct _ftsent64_time64 *fts_cur;
> + struct _ftsent64_time64 *fts_child;
> + struct _ftsent64_time64 **fts_array;
OK, cur, child, array. All using ftsent64 and time64 as expected.
> + dev_t fts_dev;
> + char *fts_path;
> + int fts_rfd;
> + int fts_pathlen;
> + int fts_nitems;
OK, dev_t, char, int int int.
> + int (*fts_compar) (const void *, const void *);
OK, function pointer.
> + int fts_options;
OK. Int.
> +} FTS64_TIME64;
> +
> +typedef struct _ftsent64_time64
> +{
> + struct _ftsent64_time64 *fts_cycle;
> + struct _ftsent64_time64 *fts_parent;
> + struct _ftsent64_time64 *fts_link;
OK. cycle, parent, linke. Use ftsent64 and time64.
> + long fts_number;
> + void *fts_pointer;
> + char *fts_accpath;
> + char *fts_path;
> + int fts_errno;
> + int fts_symfd;
> + unsigned short fts_pathlen;
> + unsigned short fts_namelen;
OK. Long, void, char char, int int, ushort, ushort.
> +
> + ino64_t fts_ino;
> + dev_t fts_dev;
> + nlink_t fts_nlink;
OK. ino64_t, dev_t, nlink_t.
> +
> + short fts_level;
> + unsigned short fts_info;
> + unsigned short fts_flags;
> + unsigned short fts_instr;
OK. Short, ushort, ushort, ushort.
> +
> + struct __stat64_t64 *fts_statp;
OK. A stat64 with time64.
> + char fts_name[1];
OK. char.
> +} FSTENT64_TIME64;
> +
> +# endif
> +#endif
> +
> +#endif /* _FTS_H */
> diff --git a/io/Makefile b/io/Makefile
> index a22492f3f3..12c832cfcb 100644
> --- a/io/Makefile
> +++ b/io/Makefile
> @@ -54,7 +54,8 @@ routines := \
> posix_fadvise posix_fadvise64 \
> posix_fallocate posix_fallocate64 \
> sendfile sendfile64 copy_file_range \
> - utimensat futimens file_change_detection
> + utimensat futimens file_change_detection \
> + fts64-time64
OK. New test.
>
> others := pwd
> test-srcs := ftwtest
> @@ -102,6 +103,7 @@ CFLAGS-statvfs.c += -fexceptions
> CFLAGS-fstatvfs.c += -fexceptions
> CFLAGS-fts.c += -Wno-uninitialized $(uses-callbacks) -fexceptions
> CFLAGS-fts64.c += -Wno-uninitialized $(uses-callbacks) -fexceptions
> +CFLAGS-fts64-time64.c += -Wno-uninitialized $(uses-callbacks) -fexceptions
OK.
> CFLAGS-ftw.c += $(uses-callbacks) -fexceptions
> CFLAGS-ftw64.c += $(uses-callbacks) -fexceptions
> CFLAGS-posix_fallocate.c += -fexceptions
> diff --git a/io/fts.h b/io/fts.h
> index 867677a27e..8d3395fa31 100644
> --- a/io/fts.h
> +++ b/io/fts.h
> @@ -187,6 +187,7 @@ FTSENT *fts_read (FTS *);
> int fts_set (FTS *, FTSENT *, int) __THROW;
> #else
> # ifdef __REDIRECT
> +# ifndef __USE_TIME_BITS64
> FTSENT *__REDIRECT (fts_children, (FTS *, int), fts64_children);
> int __REDIRECT (fts_close, (FTS *), fts64_close);
> FTS *__REDIRECT (fts_open, (char * const *, int,
> @@ -194,21 +195,53 @@ FTS *__REDIRECT (fts_open, (char * const *, int,
> fts64_open);
> FTSENT *__REDIRECT (fts_read, (FTS *), fts64_read);
> int __REDIRECT_NTH (fts_set, (FTS *, FTSENT *, int), fts64_set);
> +# else
> +FTSENT *__REDIRECT (fts_children, (FTS *, int), __fts64_children_time64);
> +int __REDIRECT (fts_close, (FTS *), __fts64_close_time64);
> +FTS *__REDIRECT (fts_open, (char * const *, int,
> + int (*)(const FTSENT **, const FTSENT **)),
> + __fts64_open_time64);
> +FTSENT *__REDIRECT (fts_read, (FTS *), __fts64_read_time64);
> +int __REDIRECT_NTH (fts_set, (FTS *, FTSENT *, int),
> + __fts64_set_time64);
OK. Redirects with new type.
> +# endif
> # else
> -# define fts_children fts64_children
> -# define fts_close fts64_close
> -# define fts_open fts64_open
> -# define fts_read fts64_read
> -# define fts_set fts64_set
> +# ifndef __USE_TIME_BITS64
> +# define fts_children fts64_children
> +# define fts_close fts64_close
> +# define fts_open fts64_open
> +# define fts_read fts64_read
> +# define fts_set fts64_set
OK. Macros for new functions.
> +# else
> +# endif
> # endif
> #endif
> #ifdef __USE_LARGEFILE64
> +# ifndef __USE_TIME_BITS64
> FTSENT64 *fts64_children (FTS64 *, int);
> int fts64_close (FTS64 *);
> FTS64 *fts64_open (char * const *, int,
> int (*)(const FTSENT64 **, const FTSENT64 **));
> FTSENT64 *fts64_read (FTS64 *);
> int fts64_set (FTS64 *, FTSENT64 *, int) __THROW;
> +# else
> +# ifdef __REDIRECT
> +FTSENT *__REDIRECT (fts64_children, (FTS64 *, int), __fts64_children_time64);
> +int __REDIRECT (fts64_close, (FTS64 *), __fts64_close_time64);
> +FTS *__REDIRECT (fts64_open, (char * const *, int,
> + int (*)(const FTSENT64 **, const FTSENT64 **)),
> + __fts64_open_time64);
> +FTSENT *__REDIRECT (fts64_read, (FTS64 *), __fts64_read_time64);
> +int __REDIRECT_NTH (fts64_set, (FTS64 *, FTSENT64 *, int),
> + __fts64_set_time64);
> +# else
> +# define fts_children __fts64_children_time64
> +# define fts_close __fts64_close_time64
> +# define fts_open __fts64_open_time64
> +# define fts_read __fts64_read_time64
> +# define fts_set __fts64_set_time64
> +# endif
> +# endif
> #endif
> __END_DECLS
>
> diff --git a/io/fts64-time64.c b/io/fts64-time64.c
> new file mode 100644
> index 0000000000..c8885ca79b
> --- /dev/null
> +++ b/io/fts64-time64.c
> @@ -0,0 +1,35 @@
> +/* File tree traversal functions LFS version.
> + Copyright (C) 2015-2021 Free Software Foundation, Inc.
> + This file is part of the GNU C Library.
> +
> + 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 <time.h>
> +
> +#if __TIMESIZE != 64
> +# define FTS_OPEN __fts64_open_time64
> +# define FTS_CLOSE __fts64_close_time64
> +# define FTS_READ __fts64_read_time64
> +# define FTS_SET __fts64_set_time64
> +# define FTS_CHILDREN __fts64_children_time64
> +# define FTSOBJ FTS64_TIME64
> +# define FTSENTRY FSTENT64_TIME64
> +# define INO_T ino64_t
> +# define STRUCT_STAT __stat64_t64
> +# define STAT __stat64_time64
> +# define LSTAT __lstat64_time64
> +
> +# include "fts.c"
OK. Wow! I'm surprised you could implement it with a wrapper that didn't require
any changes to fts.c, but here it is. I thought mips64 would need a change but
it doesn't.
> +#endif
> diff --git a/sysdeps/unix/sysv/linux/Versions b/sysdeps/unix/sysv/linux/Versions
> index 27a464483b..eb258a7333 100644
> --- a/sysdeps/unix/sysv/linux/Versions
> +++ b/sysdeps/unix/sysv/linux/Versions
> @@ -189,6 +189,11 @@ libc {
> __futimens64;
> __futimes64;
> __futimesat64;
> + __fts64_open_time64;
> + __fts64_close_time64;
> + __fts64_read_time64;
> + __fts64_set_time64;
> + __fts64_children_time64;
OK.
> __getitimer64;
> __getrusage64;
> __gettimeofday64;
> diff --git a/sysdeps/unix/sysv/linux/arm/be/libc.abilist b/sysdeps/unix/sysv/linux/arm/be/libc.abilist
> index 397c97cc16..4bdf41cae0 100644
> --- a/sysdeps/unix/sysv/linux/arm/be/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/arm/be/libc.abilist
> @@ -202,6 +202,11 @@ GLIBC_2.34 __ctime64_r F
> GLIBC_2.34 __difftime64 F
> GLIBC_2.34 __fstat64_time64 F
> GLIBC_2.34 __fstatat64_time64 F
> +GLIBC_2.34 __fts64_children_time64 F
> +GLIBC_2.34 __fts64_close_time64 F
> +GLIBC_2.34 __fts64_open_time64 F
> +GLIBC_2.34 __fts64_read_time64 F
> +GLIBC_2.34 __fts64_set_time64 F
> GLIBC_2.34 __futimens64 F
> GLIBC_2.34 __futimes64 F
> GLIBC_2.34 __futimesat64 F
> diff --git a/sysdeps/unix/sysv/linux/arm/le/libc.abilist b/sysdeps/unix/sysv/linux/arm/le/libc.abilist
> index 9bc948703c..e7bd82b036 100644
> --- a/sysdeps/unix/sysv/linux/arm/le/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/arm/le/libc.abilist
> @@ -199,6 +199,11 @@ GLIBC_2.34 __ctime64_r F
> GLIBC_2.34 __difftime64 F
> GLIBC_2.34 __fstat64_time64 F
> GLIBC_2.34 __fstatat64_time64 F
> +GLIBC_2.34 __fts64_children_time64 F
> +GLIBC_2.34 __fts64_close_time64 F
> +GLIBC_2.34 __fts64_open_time64 F
> +GLIBC_2.34 __fts64_read_time64 F
> +GLIBC_2.34 __fts64_set_time64 F
> GLIBC_2.34 __futimens64 F
> GLIBC_2.34 __futimes64 F
> GLIBC_2.34 __futimesat64 F
> diff --git a/sysdeps/unix/sysv/linux/csky/libc.abilist b/sysdeps/unix/sysv/linux/csky/libc.abilist
> index 0f84021d9f..857bc753e3 100644
> --- a/sysdeps/unix/sysv/linux/csky/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/csky/libc.abilist
> @@ -2279,6 +2279,11 @@ GLIBC_2.34 __ctime64_r F
> GLIBC_2.34 __difftime64 F
> GLIBC_2.34 __fstat64_time64 F
> GLIBC_2.34 __fstatat64_time64 F
> +GLIBC_2.34 __fts64_children_time64 F
> +GLIBC_2.34 __fts64_close_time64 F
> +GLIBC_2.34 __fts64_open_time64 F
> +GLIBC_2.34 __fts64_read_time64 F
> +GLIBC_2.34 __fts64_set_time64 F
> GLIBC_2.34 __futimens64 F
> GLIBC_2.34 __futimes64 F
> GLIBC_2.34 __futimesat64 F
> diff --git a/sysdeps/unix/sysv/linux/hppa/libc.abilist b/sysdeps/unix/sysv/linux/hppa/libc.abilist
> index 31caf8ebc3..3c94e046c5 100644
> --- a/sysdeps/unix/sysv/linux/hppa/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/hppa/libc.abilist
> @@ -2232,6 +2232,11 @@ GLIBC_2.34 __ctime64_r F
> GLIBC_2.34 __difftime64 F
> GLIBC_2.34 __fstat64_time64 F
> GLIBC_2.34 __fstatat64_time64 F
> +GLIBC_2.34 __fts64_children_time64 F
> +GLIBC_2.34 __fts64_close_time64 F
> +GLIBC_2.34 __fts64_open_time64 F
> +GLIBC_2.34 __fts64_read_time64 F
> +GLIBC_2.34 __fts64_set_time64 F
> GLIBC_2.34 __futimens64 F
> GLIBC_2.34 __futimes64 F
> GLIBC_2.34 __futimesat64 F
> diff --git a/sysdeps/unix/sysv/linux/i386/libc.abilist b/sysdeps/unix/sysv/linux/i386/libc.abilist
> index 75b71b8a5b..6b2f6e3ba9 100644
> --- a/sysdeps/unix/sysv/linux/i386/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/i386/libc.abilist
> @@ -2414,6 +2414,11 @@ GLIBC_2.34 __ctime64_r F
> GLIBC_2.34 __difftime64 F
> GLIBC_2.34 __fstat64_time64 F
> GLIBC_2.34 __fstatat64_time64 F
> +GLIBC_2.34 __fts64_children_time64 F
> +GLIBC_2.34 __fts64_close_time64 F
> +GLIBC_2.34 __fts64_open_time64 F
> +GLIBC_2.34 __fts64_read_time64 F
> +GLIBC_2.34 __fts64_set_time64 F
> GLIBC_2.34 __futimens64 F
> GLIBC_2.34 __futimes64 F
> GLIBC_2.34 __futimesat64 F
> diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
> index 2f93afc071..9379012dd9 100644
> --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
> @@ -203,6 +203,11 @@ GLIBC_2.34 __ctime64_r F
> GLIBC_2.34 __difftime64 F
> GLIBC_2.34 __fstat64_time64 F
> GLIBC_2.34 __fstatat64_time64 F
> +GLIBC_2.34 __fts64_children_time64 F
> +GLIBC_2.34 __fts64_close_time64 F
> +GLIBC_2.34 __fts64_open_time64 F
> +GLIBC_2.34 __fts64_read_time64 F
> +GLIBC_2.34 __fts64_set_time64 F
> GLIBC_2.34 __futimens64 F
> GLIBC_2.34 __futimes64 F
> GLIBC_2.34 __futimesat64 F
> diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
> index dc074cf576..15142aae53 100644
> --- a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
> @@ -2358,6 +2358,11 @@ GLIBC_2.34 __ctime64_r F
> GLIBC_2.34 __difftime64 F
> GLIBC_2.34 __fstat64_time64 F
> GLIBC_2.34 __fstatat64_time64 F
> +GLIBC_2.34 __fts64_children_time64 F
> +GLIBC_2.34 __fts64_close_time64 F
> +GLIBC_2.34 __fts64_open_time64 F
> +GLIBC_2.34 __fts64_read_time64 F
> +GLIBC_2.34 __fts64_set_time64 F
> GLIBC_2.34 __futimens64 F
> GLIBC_2.34 __futimes64 F
> GLIBC_2.34 __futimesat64 F
> diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
> index a8b8366c48..fb73ff10d0 100644
> --- a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
> @@ -2330,6 +2330,11 @@ GLIBC_2.34 __ctime64_r F
> GLIBC_2.34 __difftime64 F
> GLIBC_2.34 __fstat64_time64 F
> GLIBC_2.34 __fstatat64_time64 F
> +GLIBC_2.34 __fts64_children_time64 F
> +GLIBC_2.34 __fts64_close_time64 F
> +GLIBC_2.34 __fts64_open_time64 F
> +GLIBC_2.34 __fts64_read_time64 F
> +GLIBC_2.34 __fts64_set_time64 F
> GLIBC_2.34 __futimens64 F
> GLIBC_2.34 __futimes64 F
> GLIBC_2.34 __futimesat64 F
> diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
> index 63e3b096e3..fafcf2f255 100644
> --- a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
> @@ -2327,6 +2327,11 @@ GLIBC_2.34 __ctime64_r F
> GLIBC_2.34 __difftime64 F
> GLIBC_2.34 __fstat64_time64 F
> GLIBC_2.34 __fstatat64_time64 F
> +GLIBC_2.34 __fts64_children_time64 F
> +GLIBC_2.34 __fts64_close_time64 F
> +GLIBC_2.34 __fts64_open_time64 F
> +GLIBC_2.34 __fts64_read_time64 F
> +GLIBC_2.34 __fts64_set_time64 F
> GLIBC_2.34 __futimens64 F
> GLIBC_2.34 __futimes64 F
> GLIBC_2.34 __futimesat64 F
> diff --git a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
> index 3d17b78b42..af82e41244 100644
> --- a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
> @@ -2323,6 +2323,11 @@ GLIBC_2.34 __ctime64_r F
> GLIBC_2.34 __difftime64 F
> GLIBC_2.34 __fstat64_time64 F
> GLIBC_2.34 __fstatat64_time64 F
> +GLIBC_2.34 __fts64_children_time64 F
> +GLIBC_2.34 __fts64_close_time64 F
> +GLIBC_2.34 __fts64_open_time64 F
> +GLIBC_2.34 __fts64_read_time64 F
> +GLIBC_2.34 __fts64_set_time64 F
> GLIBC_2.34 __futimens64 F
> GLIBC_2.34 __futimes64 F
> GLIBC_2.34 __futimesat64 F
> diff --git a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
> index ba96f15040..9d7afa11f3 100644
> --- a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
> @@ -2321,6 +2321,11 @@ GLIBC_2.34 __ctime64_r F
> GLIBC_2.34 __difftime64 F
> GLIBC_2.34 __fstat64_time64 F
> GLIBC_2.34 __fstatat64_time64 F
> +GLIBC_2.34 __fts64_children_time64 F
> +GLIBC_2.34 __fts64_close_time64 F
> +GLIBC_2.34 __fts64_open_time64 F
> +GLIBC_2.34 __fts64_read_time64 F
> +GLIBC_2.34 __fts64_set_time64 F
> GLIBC_2.34 __futimens64 F
> GLIBC_2.34 __futimes64 F
> GLIBC_2.34 __futimesat64 F
> diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
> index 04cc170344..3bbd2468d7 100644
> --- a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
> @@ -2329,6 +2329,11 @@ GLIBC_2.34 __ctime64_r F
> GLIBC_2.34 __difftime64 F
> GLIBC_2.34 __fstat64_time64 F
> GLIBC_2.34 __fstatat64_time64 F
> +GLIBC_2.34 __fts64_children_time64 F
> +GLIBC_2.34 __fts64_close_time64 F
> +GLIBC_2.34 __fts64_open_time64 F
> +GLIBC_2.34 __fts64_read_time64 F
> +GLIBC_2.34 __fts64_set_time64 F
> GLIBC_2.34 __futimens64 F
> GLIBC_2.34 __futimes64 F
> GLIBC_2.34 __futimesat64 F
> diff --git a/sysdeps/unix/sysv/linux/nios2/libc.abilist b/sysdeps/unix/sysv/linux/nios2/libc.abilist
> index ce21e19622..e3b4f8bd9d 100644
> --- a/sysdeps/unix/sysv/linux/nios2/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/nios2/libc.abilist
> @@ -2369,6 +2369,11 @@ GLIBC_2.34 __ctime64_r F
> GLIBC_2.34 __difftime64 F
> GLIBC_2.34 __fstat64_time64 F
> GLIBC_2.34 __fstatat64_time64 F
> +GLIBC_2.34 __fts64_children_time64 F
> +GLIBC_2.34 __fts64_close_time64 F
> +GLIBC_2.34 __fts64_open_time64 F
> +GLIBC_2.34 __fts64_read_time64 F
> +GLIBC_2.34 __fts64_set_time64 F
> GLIBC_2.34 __futimens64 F
> GLIBC_2.34 __futimes64 F
> GLIBC_2.34 __futimesat64 F
> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
> index 4cfae3b735..f0756a3997 100644
> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
> @@ -2385,6 +2385,11 @@ GLIBC_2.34 __ctime64_r F
> GLIBC_2.34 __difftime64 F
> GLIBC_2.34 __fstat64_time64 F
> GLIBC_2.34 __fstatat64_time64 F
> +GLIBC_2.34 __fts64_children_time64 F
> +GLIBC_2.34 __fts64_close_time64 F
> +GLIBC_2.34 __fts64_open_time64 F
> +GLIBC_2.34 __fts64_read_time64 F
> +GLIBC_2.34 __fts64_set_time64 F
> GLIBC_2.34 __futimens64 F
> GLIBC_2.34 __futimes64 F
> GLIBC_2.34 __futimesat64 F
> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
> index 3e03f313b1..9e4bf76ba1 100644
> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
> @@ -2418,6 +2418,11 @@ GLIBC_2.34 __ctime64_r F
> GLIBC_2.34 __difftime64 F
> GLIBC_2.34 __fstat64_time64 F
> GLIBC_2.34 __fstatat64_time64 F
> +GLIBC_2.34 __fts64_children_time64 F
> +GLIBC_2.34 __fts64_close_time64 F
> +GLIBC_2.34 __fts64_open_time64 F
> +GLIBC_2.34 __fts64_read_time64 F
> +GLIBC_2.34 __fts64_set_time64 F
> GLIBC_2.34 __futimens64 F
> GLIBC_2.34 __futimes64 F
> GLIBC_2.34 __futimesat64 F
> diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
> index 4dfdc61761..56db45a52d 100644
> --- a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
> @@ -2383,6 +2383,11 @@ GLIBC_2.34 __ctime64_r F
> GLIBC_2.34 __difftime64 F
> GLIBC_2.34 __fstat64_time64 F
> GLIBC_2.34 __fstatat64_time64 F
> +GLIBC_2.34 __fts64_children_time64 F
> +GLIBC_2.34 __fts64_close_time64 F
> +GLIBC_2.34 __fts64_open_time64 F
> +GLIBC_2.34 __fts64_read_time64 F
> +GLIBC_2.34 __fts64_set_time64 F
> GLIBC_2.34 __futimens64 F
> GLIBC_2.34 __futimes64 F
> GLIBC_2.34 __futimesat64 F
> diff --git a/sysdeps/unix/sysv/linux/sh/be/libc.abilist b/sysdeps/unix/sysv/linux/sh/be/libc.abilist
> index 2c00100dd6..dbfdc3571f 100644
> --- a/sysdeps/unix/sysv/linux/sh/be/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/sh/be/libc.abilist
> @@ -2239,6 +2239,11 @@ GLIBC_2.34 __ctime64_r F
> GLIBC_2.34 __difftime64 F
> GLIBC_2.34 __fstat64_time64 F
> GLIBC_2.34 __fstatat64_time64 F
> +GLIBC_2.34 __fts64_children_time64 F
> +GLIBC_2.34 __fts64_close_time64 F
> +GLIBC_2.34 __fts64_open_time64 F
> +GLIBC_2.34 __fts64_read_time64 F
> +GLIBC_2.34 __fts64_set_time64 F
> GLIBC_2.34 __futimens64 F
> GLIBC_2.34 __futimes64 F
> GLIBC_2.34 __futimesat64 F
> diff --git a/sysdeps/unix/sysv/linux/sh/le/libc.abilist b/sysdeps/unix/sysv/linux/sh/le/libc.abilist
> index 2bcf38af9b..4b959c0f79 100644
> --- a/sysdeps/unix/sysv/linux/sh/le/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/sh/le/libc.abilist
> @@ -2236,6 +2236,11 @@ GLIBC_2.34 __ctime64_r F
> GLIBC_2.34 __difftime64 F
> GLIBC_2.34 __fstat64_time64 F
> GLIBC_2.34 __fstatat64_time64 F
> +GLIBC_2.34 __fts64_children_time64 F
> +GLIBC_2.34 __fts64_close_time64 F
> +GLIBC_2.34 __fts64_open_time64 F
> +GLIBC_2.34 __fts64_read_time64 F
> +GLIBC_2.34 __fts64_set_time64 F
> GLIBC_2.34 __futimens64 F
> GLIBC_2.34 __futimes64 F
> GLIBC_2.34 __futimesat64 F
> diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
> index dad08de21f..95fea73af5 100644
> --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
> @@ -2376,6 +2376,11 @@ GLIBC_2.34 __ctime64_r F
> GLIBC_2.34 __difftime64 F
> GLIBC_2.34 __fstat64_time64 F
> GLIBC_2.34 __fstatat64_time64 F
> +GLIBC_2.34 __fts64_children_time64 F
> +GLIBC_2.34 __fts64_close_time64 F
> +GLIBC_2.34 __fts64_open_time64 F
> +GLIBC_2.34 __fts64_read_time64 F
> +GLIBC_2.34 __fts64_set_time64 F
> GLIBC_2.34 __futimens64 F
> GLIBC_2.34 __futimes64 F
> GLIBC_2.34 __futimesat64 F
>
--
Cheers,
Carlos.
next prev parent reply other threads:[~2021-06-04 19:39 UTC|newest]
Thread overview: 92+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-05-18 20:55 [PATCH v2 00/25] Add 64 bit time support on legacy ABIs Adhemerval Zanella
2021-05-18 20:55 ` [PATCH v2 01/25] linux: mips: Split libpthread.abilist in n32 and n64 Adhemerval Zanella
2021-05-19 8:24 ` Lukasz Majewski
2021-05-20 6:38 ` Florian Weimer
2021-05-20 10:43 ` Adhemerval Zanella
2021-06-04 19:29 ` Carlos O'Donell
2021-05-18 20:55 ` [PATCH v2 02/25] linux: mips: Split librt.abilist " Adhemerval Zanella
2021-05-19 8:25 ` Lukasz Majewski
2021-06-04 19:29 ` Carlos O'Donell
2021-05-18 20:55 ` [PATCH v2 03/25] linux: mips: Split libanl.abilist " Adhemerval Zanella
2021-05-19 8:25 ` Lukasz Majewski
2021-06-04 19:30 ` Carlos O'Donell
2021-05-18 20:55 ` [PATCH v2 04/25] linux: s390: Add libanl.abilist in s390 and s390x Adhemerval Zanella
2021-05-19 8:26 ` Lukasz Majewski
2021-06-04 19:30 ` Carlos O'Donell
2021-05-18 20:55 ` [PATCH v2 05/25] linux: Add fallback for 64-bit time_t SO_{RCV, SND}TIMEO Adhemerval Zanella
2021-05-19 8:36 ` [PATCH v2 05/25] linux: Add fallback for 64-bit time_t SO_{RCV,SND}TIMEO Lukasz Majewski
2021-05-20 6:44 ` [PATCH v2 05/25] linux: Add fallback for 64-bit time_t SO_{RCV, SND}TIMEO Florian Weimer
2021-05-20 18:01 ` Adhemerval Zanella
2021-05-21 18:37 ` Florian Weimer
2021-05-21 19:17 ` Adhemerval Zanella
2021-06-04 19:30 ` [PATCH v2 05/25] linux: Add fallback for 64-bit time_t SO_{RCV,SND}TIMEO Carlos O'Donell
2021-06-07 17:52 ` Adhemerval Zanella
2021-05-18 20:55 ` [PATCH v2 06/25] linux: Add fallback for 64-bit time_t SO_TIMESTAMP{NS} Adhemerval Zanella
2021-05-19 8:50 ` Lukasz Majewski
2021-05-20 6:50 ` Florian Weimer
2021-05-20 18:46 ` Adhemerval Zanella
2021-05-21 18:38 ` Florian Weimer
2021-05-21 19:02 ` Adhemerval Zanella
2021-06-04 19:30 ` Carlos O'Donell
2021-05-18 20:55 ` [PATCH v2 07/25] linux: Add recvvmsg " Adhemerval Zanella
2021-05-19 9:02 ` Lukasz Majewski
2021-06-04 19:30 ` Carlos O'Donell
2021-05-18 20:55 ` [PATCH v2 08/25] y2038: Add __USE_TIME_BITS64 support for time_t Adhemerval Zanella
2021-05-19 9:02 ` Lukasz Majewski
2021-06-04 19:30 ` Carlos O'Donell
2021-05-18 20:55 ` [PATCH v2 09/25] y2038: Add __USE_TIME_BITS64 support for struct timeval Adhemerval Zanella
2021-05-19 9:03 ` Lukasz Majewski
2021-06-04 19:31 ` Carlos O'Donell
2021-05-18 20:55 ` [PATCH v2 10/25] y2038: Add __USE_TIME_BITS64 support for struct timespec Adhemerval Zanella
2021-05-19 9:03 ` Lukasz Majewski
2021-06-04 19:31 ` Carlos O'Donell
2021-05-18 20:55 ` [PATCH v2 11/25] y2038: Add __USE_TIME_BITS64 support for struct utimbuf Adhemerval Zanella
2021-05-19 9:04 ` Lukasz Majewski
2021-06-04 19:31 ` Carlos O'Donell
2021-05-18 20:56 ` [PATCH v2 12/25] y2038: linux: Add __USE_TIME_BITS64 support for struct timex Adhemerval Zanella
2021-05-19 9:04 ` Lukasz Majewski
2021-06-04 19:31 ` Carlos O'Donell
2021-05-18 20:56 ` [PATCH v2 13/25] y2038: Use a common definition for stat Adhemerval Zanella
2021-06-04 19:37 ` Carlos O'Donell
2021-06-07 18:07 ` Adhemerval Zanella
2021-05-18 20:56 ` [PATCH v2 14/25] y2038: Use a common definition for msqid_ds Adhemerval Zanella
2021-06-04 19:38 ` Carlos O'Donell
2021-06-07 18:29 ` Adhemerval Zanella
2021-05-18 20:56 ` [PATCH v2 15/25] y2038: Use a common definition for semid_ds Adhemerval Zanella
2021-05-19 9:09 ` Lukasz Majewski
2021-06-04 19:38 ` Carlos O'Donell
2021-06-07 18:46 ` Adhemerval Zanella
2021-05-18 20:56 ` [PATCH v2 16/25] y2038: Use a common definition for shmid_ds Adhemerval Zanella
2021-05-19 9:09 ` Lukasz Majewski
2021-06-04 19:38 ` Carlos O'Donell
2021-05-18 20:56 ` [PATCH v2 17/25] y2038: Add __USE_TIME_BITS64 support for socket-constants.h Adhemerval Zanella
2021-05-19 9:13 ` Lukasz Majewski
2021-06-04 19:38 ` Carlos O'Donell
2021-05-18 20:56 ` [PATCH v2 18/25] time: Add 64 bit time support for getdate Adhemerval Zanella
2021-05-19 9:15 ` Lukasz Majewski
2021-06-04 19:38 ` Carlos O'Donell
2021-05-18 20:56 ` [PATCH v2 19/25] y2038: Add support for 64 bit time on legacy ABIs Adhemerval Zanella
2021-05-19 9:18 ` Lukasz Majewski
2021-05-20 6:58 ` Florian Weimer
2021-05-20 10:37 ` Adhemerval Zanella
2021-06-04 19:38 ` Carlos O'Donell
2021-05-18 20:56 ` [PATCH v2 20/25] posix: Add glob64 with 64 bit time_t support Adhemerval Zanella
2021-05-19 10:44 ` Lukasz Majewski
2021-06-04 19:39 ` Carlos O'Donell
2021-06-07 18:52 ` Adhemerval Zanella
2021-05-18 20:56 ` [PATCH v2 21/25] io: Add fts64 " Adhemerval Zanella
2021-05-19 10:50 ` Lukasz Majewski
2021-06-04 19:39 ` Carlos O'Donell [this message]
2021-05-18 20:56 ` [PATCH v2 22/25] io: Add ftw64 " Adhemerval Zanella
2021-05-19 10:57 ` Lukasz Majewski
2021-06-04 19:39 ` Carlos O'Donell
2021-05-18 20:56 ` [PATCH v2 23/25] libsupport: Add 64 bit time_t support for time functions Adhemerval Zanella
2021-05-19 11:00 ` Lukasz Majewski
2021-06-04 19:39 ` Carlos O'Donell
2021-05-18 20:56 ` [PATCH v2 24/25] libsupport: Add 64 bit time_t support for stat functions Adhemerval Zanella
2021-05-19 11:04 ` Lukasz Majewski
2021-06-04 19:39 ` Carlos O'Donell
2021-05-18 20:56 ` [PATCH v2 25/25] y2038: Add test coverage Adhemerval Zanella
2021-05-19 11:08 ` Lukasz Majewski
2021-06-04 19:39 ` Carlos O'Donell
2021-06-04 19:29 ` [PATCH v2 00/25] Add 64 bit time support on legacy ABIs Carlos O'Donell
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5c6d5a39-2035-14b8-e1cc-4298e7124bae@redhat.com \
--to=carlos@redhat.com \
--cc=adhemerval.zanella@linaro.org \
--cc=libc-alpha@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).