On Tue, 18 May 2021 17:56:10 -0300 Adhemerval Zanella wrote: > Similar to fts, ftw routines passes a stat pointer that might > differ of size and layout when 64 bit time API is used. > > Checked on i686-linux-gnu and x86_64-linux-gnu. Reviewed-by: Lukasz Majewski > --- > include/ftw.h | 18 ++++++++ > io/Makefile | 4 +- > io/ftw.c | 5 +- > io/ftw.h | 46 > ++++++++++++++++++- io/ftw64-time64.c | > 34 ++++++++++++++ sysdeps/unix/sysv/linux/Versions | 2 + > sysdeps/unix/sysv/linux/arm/be/libc.abilist | 2 + > sysdeps/unix/sysv/linux/arm/le/libc.abilist | 2 + > sysdeps/unix/sysv/linux/csky/libc.abilist | 2 + > sysdeps/unix/sysv/linux/hppa/libc.abilist | 2 + > sysdeps/unix/sysv/linux/i386/libc.abilist | 2 + > .../sysv/linux/m68k/coldfire/libc.abilist | 2 + > .../unix/sysv/linux/m68k/m680x0/libc.abilist | 2 + > .../sysv/linux/microblaze/be/libc.abilist | 2 + > .../sysv/linux/microblaze/le/libc.abilist | 2 + > .../sysv/linux/mips/mips32/fpu/libc.abilist | 2 + > .../sysv/linux/mips/mips32/nofpu/libc.abilist | 2 + > .../sysv/linux/mips/mips64/n32/libc.abilist | 2 + > sysdeps/unix/sysv/linux/nios2/libc.abilist | 2 + > .../linux/powerpc/powerpc32/fpu/libc.abilist | 2 + > .../powerpc/powerpc32/nofpu/libc.abilist | 2 + > .../unix/sysv/linux/s390/s390-32/libc.abilist | 2 + > sysdeps/unix/sysv/linux/sh/be/libc.abilist | 2 + > sysdeps/unix/sysv/linux/sh/le/libc.abilist | 2 + > .../sysv/linux/sparc/sparc32/libc.abilist | 2 + > 25 files changed, 141 insertions(+), 6 deletions(-) > create mode 100644 io/ftw64-time64.c > > diff --git a/include/ftw.h b/include/ftw.h > index 4fb654cf22..8fb89c4046 100644 > --- a/include/ftw.h > +++ b/include/ftw.h > @@ -1 +1,19 @@ > +#ifndef _FTW_H > #include > + > +#ifndef _ISOMAC > +# if __TIMESIZE != 64 > +# include > + > +typedef int (*__ftw64_time64_func_t) (const char *, > + const struct __stat64_t64 *, > int); +typedef int (*__nftw64_time64_func_t) (const char *, > + const struct __stat64_t64 *, > int, > + struct FTW *); > + > +extern int __ftw64_time64 (const char *, __ftw64_time64_func_t, int); > +extern int __nftw64_time64 (const char *, __nftw64_time64_func_t, > int, int); +# endif > +#endif > + > +#endif /* _FTW_H */ > diff --git a/io/Makefile b/io/Makefile > index 12c832cfcb..d35e966258 100644 > --- a/io/Makefile > +++ b/io/Makefile > @@ -55,7 +55,8 @@ routines := > \ posix_fallocate posix_fallocate64 > \ sendfile sendfile64 copy_file_range > \ utimensat futimens > file_change_detection \ > - fts64-time64 > + fts64-time64 > \ > + ftw64-time64 > > others := pwd > test-srcs := ftwtest > @@ -106,6 +107,7 @@ CFLAGS-fts64.c += -Wno-uninitialized > $(uses-callbacks) -fexceptions CFLAGS-fts64-time64.c += > -Wno-uninitialized $(uses-callbacks) -fexceptions CFLAGS-ftw.c += > $(uses-callbacks) -fexceptions CFLAGS-ftw64.c += $(uses-callbacks) > -fexceptions +CFLAGS-ftw64-time64.c += $(uses-callbacks) -fexceptions > CFLAGS-posix_fallocate.c += -fexceptions > CFLAGS-posix_fallocate64.c += -fexceptions > CFLAGS-fallocate.c += -fexceptions > diff --git a/io/ftw.c b/io/ftw.c > index baca3deeee..ce1c6a14a3 100644 > --- a/io/ftw.c > +++ b/io/ftw.c > @@ -821,7 +821,7 @@ FTW_NAME (const char *path, FTW_FUNC_T func, int > descriptors) return ftw_startup (path, 0, func, descriptors, 0); > } > > -#ifndef _LIBC > +#ifndef NFTW_OLD_NAME > int > NFTW_NAME (const char *path, NFTW_FUNC_T func, int descriptors, int > flags) { > @@ -844,7 +844,6 @@ NFTW_NEW_NAME (const char *path, NFTW_FUNC_T > func, int descriptors, int flags) } > return ftw_startup (path, 1, func, descriptors, flags); > } > - > versioned_symbol (libc, NFTW_NEW_NAME, NFTW_NAME, GLIBC_2_3_3); > > # if SHLIB_COMPAT(libc, GLIBC_2_1, GLIBC_2_3_3) > @@ -863,4 +862,4 @@ NFTW_OLD_NAME (const char *path, NFTW_FUNC_T > func, int descriptors, int flags) > compat_symbol (libc, NFTW_OLD_NAME, NFTW_NAME, GLIBC_2_1); > # endif > -#endif > +#endif /* NFTW_OLD_NAME */ > diff --git a/io/ftw.h b/io/ftw.h > index 751d689cdb..446498856d 100644 > --- a/io/ftw.h > +++ b/io/ftw.h > @@ -137,15 +137,36 @@ extern int ftw (const char *__dir, __ftw_func_t > __func, int __descriptors) __nonnull ((1, 2)); > #else > # ifdef __REDIRECT > +# ifndef __USE_TIME_BITS64 > extern int __REDIRECT (ftw, (const char *__dir, __ftw_func_t __func, > int __descriptors), ftw64) __nonnull > ((1, 2)); +# else > +extern int __REDIRECT (ftw, (const char *__dir, __ftw_func_t __func, > + int __descriptors), __ftw64_time64) > + __nonnull ((1, 2)); > +# endif > # else > -# define ftw ftw64 > +# ifndef __USE_TIME_BITS64 > +# define ftw ftw64 > +# else > +# define ftw __ftw64_time64 > +# endif > # endif > #endif > #ifdef __USE_LARGEFILE64 > +# ifndef __USE_TIME_BITS64 > extern int ftw64 (const char *__dir, __ftw64_func_t __func, > int __descriptors) __nonnull ((1, 2)); > +# else > +# ifdef __REDIRECT > +extern int __REDIRECT (ftw64, (const char *__dir, __ftw64_func_t > __func, > + int __descriptors), > + __ftw64_time64) > + __nonnull ((1, 2)); > +# else > +# define nftw64 __nftw64_time64 > +# endif > +# endif > #endif > > #ifdef __USE_XOPEN_EXTENDED > @@ -159,16 +180,37 @@ extern int nftw (const char *__dir, > __nftw_func_t __func, int __descriptors, int __flag) __nonnull ((1, > 2)); # else > # ifdef __REDIRECT > +# ifndef __USE_TIME_BITS64 > extern int __REDIRECT (nftw, (const char *__dir, __nftw_func_t > __func, int __descriptors, int __flag), nftw64) > __nonnull ((1, 2)); > +# else > +extern int __REDIRECT (nftw, (const char *__dir, __nftw_func_t > __func, > + int __descriptors, int __flag), > __nftw64_time64) > + __nonnull ((1, 2)); > +# endif > # else > -# define nftw nftw64 > +# ifndef __USE_TIME_BITS64 > +# define nftw nftw64 > +# else > +# define nftw __nftw64_time64 > +# endif > # endif > # endif > # ifdef __USE_LARGEFILE64 > +# ifndef __USE_TIME_BITS64 > extern int nftw64 (const char *__dir, __nftw64_func_t __func, > int __descriptors, int __flag) __nonnull ((1, 2)); > +# else > +# ifdef __REDIRECT > +extern int __REDIRECT (nftw64, (const char *__dir, __nftw64_func_t > __func, > + int __descriptors, int __flag), > + __nftw64_time64) > + __nonnull ((1, 2)); > +# else > +# define nftw64 __nftw64_time64 > +# endif > +# endif > # endif > #endif > > diff --git a/io/ftw64-time64.c b/io/ftw64-time64.c > new file mode 100644 > index 0000000000..7c9db5448a > --- /dev/null > +++ b/io/ftw64-time64.c > @@ -0,0 +1,34 @@ > +/* File tree walker functions. LFS version. > + Copyright (C) 1996-2021 Free Software Foundation, Inc. > + This file is part of the GNU C Library. > + Contributed by Ulrich Drepper , 1996. > + > + 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 > + . */ > + > +#include > + > +#if __TIMESIZE != 64 > +# define FTW_NAME __ftw64_time64 > +# define NFTW_NAME __nftw64_time64 > +# define INO_T ino64_t > +# define STRUCT_STAT __stat64_t64 > +# define LSTAT __lstat64_time64 > +# define STAT __stat64_time64 > +# define FSTATAT __fstatat64_time64 > +# define FTW_FUNC_T __ftw64_time64_func_t > +# define NFTW_FUNC_T __nftw64_time64_func_t > + > +# include "ftw.c" > +#endif > diff --git a/sysdeps/unix/sysv/linux/Versions > b/sysdeps/unix/sysv/linux/Versions index eb258a7333..84063d808c 100644 > --- a/sysdeps/unix/sysv/linux/Versions > +++ b/sysdeps/unix/sysv/linux/Versions > @@ -194,6 +194,8 @@ libc { > __fts64_read_time64; > __fts64_set_time64; > __fts64_children_time64; > + __ftw64_time64; > + __nftw64_time64; > __getitimer64; > __getrusage64; > __gettimeofday64; > diff --git a/sysdeps/unix/sysv/linux/arm/be/libc.abilist > b/sysdeps/unix/sysv/linux/arm/be/libc.abilist index > 4bdf41cae0..829ecfec18 100644 --- > a/sysdeps/unix/sysv/linux/arm/be/libc.abilist +++ > b/sysdeps/unix/sysv/linux/arm/be/libc.abilist @@ -207,6 +207,7 @@ > 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 __ftw64_time64 F > GLIBC_2.34 __futimens64 F > GLIBC_2.34 __futimes64 F > GLIBC_2.34 __futimesat64 F > @@ -226,6 +227,7 @@ GLIBC_2.34 __mktime64 F > GLIBC_2.34 __msgctl64 F > GLIBC_2.34 __mtx_timedlock64 F > GLIBC_2.34 __nanosleep64 F > +GLIBC_2.34 __nftw64_time64 F > GLIBC_2.34 __ntp_gettime64 F > GLIBC_2.34 __ntp_gettimex64 F > GLIBC_2.34 __ppoll64 F > diff --git a/sysdeps/unix/sysv/linux/arm/le/libc.abilist > b/sysdeps/unix/sysv/linux/arm/le/libc.abilist index > e7bd82b036..5653b99cf0 100644 --- > a/sysdeps/unix/sysv/linux/arm/le/libc.abilist +++ > b/sysdeps/unix/sysv/linux/arm/le/libc.abilist @@ -204,6 +204,7 @@ > 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 __ftw64_time64 F > GLIBC_2.34 __futimens64 F > GLIBC_2.34 __futimes64 F > GLIBC_2.34 __futimesat64 F > @@ -223,6 +224,7 @@ GLIBC_2.34 __mktime64 F > GLIBC_2.34 __msgctl64 F > GLIBC_2.34 __mtx_timedlock64 F > GLIBC_2.34 __nanosleep64 F > +GLIBC_2.34 __nftw64_time64 F > GLIBC_2.34 __ntp_gettime64 F > GLIBC_2.34 __ntp_gettimex64 F > GLIBC_2.34 __ppoll64 F > diff --git a/sysdeps/unix/sysv/linux/csky/libc.abilist > b/sysdeps/unix/sysv/linux/csky/libc.abilist index > 857bc753e3..e158505191 100644 --- > a/sysdeps/unix/sysv/linux/csky/libc.abilist +++ > b/sysdeps/unix/sysv/linux/csky/libc.abilist @@ -2284,6 +2284,7 @@ > 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 __ftw64_time64 F > GLIBC_2.34 __futimens64 F > GLIBC_2.34 __futimes64 F > GLIBC_2.34 __futimesat64 F > @@ -2303,6 +2304,7 @@ GLIBC_2.34 __mktime64 F > GLIBC_2.34 __msgctl64 F > GLIBC_2.34 __mtx_timedlock64 F > GLIBC_2.34 __nanosleep64 F > +GLIBC_2.34 __nftw64_time64 F > GLIBC_2.34 __ntp_gettime64 F > GLIBC_2.34 __ntp_gettimex64 F > GLIBC_2.34 __ppoll64 F > diff --git a/sysdeps/unix/sysv/linux/hppa/libc.abilist > b/sysdeps/unix/sysv/linux/hppa/libc.abilist index > 3c94e046c5..788b0fbb29 100644 --- > a/sysdeps/unix/sysv/linux/hppa/libc.abilist +++ > b/sysdeps/unix/sysv/linux/hppa/libc.abilist @@ -2237,6 +2237,7 @@ > 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 __ftw64_time64 F > GLIBC_2.34 __futimens64 F > GLIBC_2.34 __futimes64 F > GLIBC_2.34 __futimesat64 F > @@ -2256,6 +2257,7 @@ GLIBC_2.34 __mktime64 F > GLIBC_2.34 __msgctl64 F > GLIBC_2.34 __mtx_timedlock64 F > GLIBC_2.34 __nanosleep64 F > +GLIBC_2.34 __nftw64_time64 F > GLIBC_2.34 __ntp_gettime64 F > GLIBC_2.34 __ntp_gettimex64 F > GLIBC_2.34 __ppoll64 F > diff --git a/sysdeps/unix/sysv/linux/i386/libc.abilist > b/sysdeps/unix/sysv/linux/i386/libc.abilist index > 6b2f6e3ba9..2ca1bc3408 100644 --- > a/sysdeps/unix/sysv/linux/i386/libc.abilist +++ > b/sysdeps/unix/sysv/linux/i386/libc.abilist @@ -2419,6 +2419,7 @@ > 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 __ftw64_time64 F > GLIBC_2.34 __futimens64 F > GLIBC_2.34 __futimes64 F > GLIBC_2.34 __futimesat64 F > @@ -2439,6 +2440,7 @@ GLIBC_2.34 __mktime64 F > GLIBC_2.34 __msgctl64 F > GLIBC_2.34 __mtx_timedlock64 F > GLIBC_2.34 __nanosleep64 F > +GLIBC_2.34 __nftw64_time64 F > GLIBC_2.34 __ntp_gettime64 F > GLIBC_2.34 __ntp_gettimex64 F > GLIBC_2.34 __ppoll64 F > diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist > b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist index > 9379012dd9..5711de528e 100644 --- > a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist +++ > b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist @@ -208,6 +208,7 > @@ 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 __ftw64_time64 F > GLIBC_2.34 __futimens64 F > GLIBC_2.34 __futimes64 F > GLIBC_2.34 __futimesat64 F > @@ -227,6 +228,7 @@ GLIBC_2.34 __mktime64 F > GLIBC_2.34 __msgctl64 F > GLIBC_2.34 __mtx_timedlock64 F > GLIBC_2.34 __nanosleep64 F > +GLIBC_2.34 __nftw64_time64 F > GLIBC_2.34 __ntp_gettime64 F > GLIBC_2.34 __ntp_gettimex64 F > GLIBC_2.34 __ppoll64 F > diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist > b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist index > 15142aae53..514a8f321e 100644 --- > a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist +++ > b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist @@ -2363,6 +2363,7 > @@ 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 __ftw64_time64 F > GLIBC_2.34 __futimens64 F > GLIBC_2.34 __futimes64 F > GLIBC_2.34 __futimesat64 F > @@ -2382,6 +2383,7 @@ GLIBC_2.34 __mktime64 F > GLIBC_2.34 __msgctl64 F > GLIBC_2.34 __mtx_timedlock64 F > GLIBC_2.34 __nanosleep64 F > +GLIBC_2.34 __nftw64_time64 F > GLIBC_2.34 __ntp_gettime64 F > GLIBC_2.34 __ntp_gettimex64 F > GLIBC_2.34 __ppoll64 F > diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist > b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist index > fb73ff10d0..a68e3e8422 100644 --- > a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist +++ > b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist @@ -2335,6 > +2335,7 @@ 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 __ftw64_time64 F > GLIBC_2.34 __futimens64 F > GLIBC_2.34 __futimes64 F > GLIBC_2.34 __futimesat64 F > @@ -2354,6 +2355,7 @@ GLIBC_2.34 __mktime64 F > GLIBC_2.34 __msgctl64 F > GLIBC_2.34 __mtx_timedlock64 F > GLIBC_2.34 __nanosleep64 F > +GLIBC_2.34 __nftw64_time64 F > GLIBC_2.34 __ntp_gettime64 F > GLIBC_2.34 __ntp_gettimex64 F > GLIBC_2.34 __ppoll64 F > diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist > b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist index > fafcf2f255..e5412abb67 100644 --- > a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist +++ > b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist @@ -2332,6 > +2332,7 @@ 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 __ftw64_time64 F > GLIBC_2.34 __futimens64 F > GLIBC_2.34 __futimes64 F > GLIBC_2.34 __futimesat64 F > @@ -2351,6 +2352,7 @@ GLIBC_2.34 __mktime64 F > GLIBC_2.34 __msgctl64 F > GLIBC_2.34 __mtx_timedlock64 F > GLIBC_2.34 __nanosleep64 F > +GLIBC_2.34 __nftw64_time64 F > GLIBC_2.34 __ntp_gettime64 F > GLIBC_2.34 __ntp_gettimex64 F > GLIBC_2.34 __ppoll64 F > diff --git a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist > b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist index > af82e41244..836e33db28 100644 --- > a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist +++ > b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist @@ -2328,6 > +2328,7 @@ 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 __ftw64_time64 F > GLIBC_2.34 __futimens64 F > GLIBC_2.34 __futimes64 F > GLIBC_2.34 __futimesat64 F > @@ -2347,6 +2348,7 @@ GLIBC_2.34 __mktime64 F > GLIBC_2.34 __msgctl64 F > GLIBC_2.34 __mtx_timedlock64 F > GLIBC_2.34 __nanosleep64 F > +GLIBC_2.34 __nftw64_time64 F > GLIBC_2.34 __ntp_gettime64 F > GLIBC_2.34 __ntp_gettimex64 F > GLIBC_2.34 __ppoll64 F > diff --git a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist > b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist index > 9d7afa11f3..30fe740a12 100644 --- > a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist +++ > b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist @@ -2326,6 > +2326,7 @@ 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 __ftw64_time64 F > GLIBC_2.34 __futimens64 F > GLIBC_2.34 __futimes64 F > GLIBC_2.34 __futimesat64 F > @@ -2345,6 +2346,7 @@ GLIBC_2.34 __mktime64 F > GLIBC_2.34 __msgctl64 F > GLIBC_2.34 __mtx_timedlock64 F > GLIBC_2.34 __nanosleep64 F > +GLIBC_2.34 __nftw64_time64 F > GLIBC_2.34 __ntp_gettime64 F > GLIBC_2.34 __ntp_gettimex64 F > GLIBC_2.34 __ppoll64 F > diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist > b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist index > 3bbd2468d7..345a35807e 100644 --- > a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist +++ > b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist @@ -2334,6 > +2334,7 @@ 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 __ftw64_time64 F > GLIBC_2.34 __futimens64 F > GLIBC_2.34 __futimes64 F > GLIBC_2.34 __futimesat64 F > @@ -2353,6 +2354,7 @@ GLIBC_2.34 __mktime64 F > GLIBC_2.34 __msgctl64 F > GLIBC_2.34 __mtx_timedlock64 F > GLIBC_2.34 __nanosleep64 F > +GLIBC_2.34 __nftw64_time64 F > GLIBC_2.34 __ntp_gettime64 F > GLIBC_2.34 __ntp_gettimex64 F > GLIBC_2.34 __ppoll64 F > diff --git a/sysdeps/unix/sysv/linux/nios2/libc.abilist > b/sysdeps/unix/sysv/linux/nios2/libc.abilist index > e3b4f8bd9d..aba934d286 100644 --- > a/sysdeps/unix/sysv/linux/nios2/libc.abilist +++ > b/sysdeps/unix/sysv/linux/nios2/libc.abilist @@ -2374,6 +2374,7 @@ > 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 __ftw64_time64 F > GLIBC_2.34 __futimens64 F > GLIBC_2.34 __futimes64 F > GLIBC_2.34 __futimesat64 F > @@ -2393,6 +2394,7 @@ GLIBC_2.34 __mktime64 F > GLIBC_2.34 __msgctl64 F > GLIBC_2.34 __mtx_timedlock64 F > GLIBC_2.34 __nanosleep64 F > +GLIBC_2.34 __nftw64_time64 F > GLIBC_2.34 __ntp_gettime64 F > GLIBC_2.34 __ntp_gettimex64 F > GLIBC_2.34 __ppoll64 F > diff --git > a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist > b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist index > f0756a3997..bd0f351037 100644 --- > a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist +++ > b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist @@ > -2390,6 +2390,7 @@ 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 __ftw64_time64 F > GLIBC_2.34 __futimens64 F > GLIBC_2.34 __futimes64 F > GLIBC_2.34 __futimesat64 F > @@ -2409,6 +2410,7 @@ GLIBC_2.34 __mktime64 F > GLIBC_2.34 __msgctl64 F > GLIBC_2.34 __mtx_timedlock64 F > GLIBC_2.34 __nanosleep64 F > +GLIBC_2.34 __nftw64_time64 F > GLIBC_2.34 __ntp_gettime64 F > GLIBC_2.34 __ntp_gettimex64 F > GLIBC_2.34 __ppoll64 F > diff --git > a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist > b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist index > 9e4bf76ba1..4b613fe9ba 100644 --- > a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist +++ > b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist @@ > -2423,6 +2423,7 @@ 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 __ftw64_time64 F > GLIBC_2.34 __futimens64 F > GLIBC_2.34 __futimes64 F > GLIBC_2.34 __futimesat64 F > @@ -2442,6 +2443,7 @@ GLIBC_2.34 __mktime64 F > GLIBC_2.34 __msgctl64 F > GLIBC_2.34 __mtx_timedlock64 F > GLIBC_2.34 __nanosleep64 F > +GLIBC_2.34 __nftw64_time64 F > GLIBC_2.34 __ntp_gettime64 F > GLIBC_2.34 __ntp_gettimex64 F > GLIBC_2.34 __ppoll64 F > diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist > b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist index > 56db45a52d..8e7ca663e8 100644 --- > a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist +++ > b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist @@ -2388,6 > +2388,7 @@ 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 __ftw64_time64 F > GLIBC_2.34 __futimens64 F > GLIBC_2.34 __futimes64 F > GLIBC_2.34 __futimesat64 F > @@ -2407,6 +2408,7 @@ GLIBC_2.34 __mktime64 F > GLIBC_2.34 __msgctl64 F > GLIBC_2.34 __mtx_timedlock64 F > GLIBC_2.34 __nanosleep64 F > +GLIBC_2.34 __nftw64_time64 F > GLIBC_2.34 __ntp_gettime64 F > GLIBC_2.34 __ntp_gettimex64 F > GLIBC_2.34 __ppoll64 F > diff --git a/sysdeps/unix/sysv/linux/sh/be/libc.abilist > b/sysdeps/unix/sysv/linux/sh/be/libc.abilist index > dbfdc3571f..74fb49fc37 100644 --- > a/sysdeps/unix/sysv/linux/sh/be/libc.abilist +++ > b/sysdeps/unix/sysv/linux/sh/be/libc.abilist @@ -2244,6 +2244,7 @@ > 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 __ftw64_time64 F > GLIBC_2.34 __futimens64 F > GLIBC_2.34 __futimes64 F > GLIBC_2.34 __futimesat64 F > @@ -2263,6 +2264,7 @@ GLIBC_2.34 __mktime64 F > GLIBC_2.34 __msgctl64 F > GLIBC_2.34 __mtx_timedlock64 F > GLIBC_2.34 __nanosleep64 F > +GLIBC_2.34 __nftw64_time64 F > GLIBC_2.34 __ntp_gettime64 F > GLIBC_2.34 __ntp_gettimex64 F > GLIBC_2.34 __ppoll64 F > diff --git a/sysdeps/unix/sysv/linux/sh/le/libc.abilist > b/sysdeps/unix/sysv/linux/sh/le/libc.abilist index > 4b959c0f79..8b9df6cd1e 100644 --- > a/sysdeps/unix/sysv/linux/sh/le/libc.abilist +++ > b/sysdeps/unix/sysv/linux/sh/le/libc.abilist @@ -2241,6 +2241,7 @@ > 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 __ftw64_time64 F > GLIBC_2.34 __futimens64 F > GLIBC_2.34 __futimes64 F > GLIBC_2.34 __futimesat64 F > @@ -2260,6 +2261,7 @@ GLIBC_2.34 __mktime64 F > GLIBC_2.34 __msgctl64 F > GLIBC_2.34 __mtx_timedlock64 F > GLIBC_2.34 __nanosleep64 F > +GLIBC_2.34 __nftw64_time64 F > GLIBC_2.34 __ntp_gettime64 F > GLIBC_2.34 __ntp_gettimex64 F > GLIBC_2.34 __ppoll64 F > diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist > b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist index > 95fea73af5..023232a00b 100644 --- > a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist +++ > b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist @@ -2381,6 > +2381,7 @@ 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 __ftw64_time64 F > GLIBC_2.34 __futimens64 F > GLIBC_2.34 __futimes64 F > GLIBC_2.34 __futimesat64 F > @@ -2400,6 +2401,7 @@ GLIBC_2.34 __mktime64 F > GLIBC_2.34 __msgctl64 F > GLIBC_2.34 __mtx_timedlock64 F > GLIBC_2.34 __nanosleep64 F > +GLIBC_2.34 __nftw64_time64 F > GLIBC_2.34 __ntp_gettime64 F > GLIBC_2.34 __ntp_gettimex64 F > GLIBC_2.34 __ppoll64 F Best regards, Lukasz Majewski -- DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-59 Fax: (+49)-8142-66989-80 Email: lukma@denx.de