With time64 enabled we use statx() system call and the appropriate
routines for results conversion. There is no need in `__ts32_struct`
anymore.

Signed-off-by: Dmitry Chestnykh <dm.chestn...@gmail.com>
---
 include/internal/time64_helpers.h             |  5 ----
 libc/sysdeps/linux/arm/bits/kernel_stat.h     | 16 -----------
 libc/sysdeps/linux/common/xstatconv.c         | 27 -------------------
 libc/sysdeps/linux/or1k/bits/kernel_stat.h    | 10 -------
 libc/sysdeps/linux/powerpc/bits/kernel_stat.h | 16 -----------
 libc/sysdeps/linux/sparc/bits/kernel_stat.h   | 16 -----------
 libc/sysdeps/linux/xtensa/bits/kernel_stat.h  | 16 -----------
 7 files changed, 106 deletions(-)

diff --git a/include/internal/time64_helpers.h 
b/include/internal/time64_helpers.h
index 0f912f4bf..2284aacd9 100644
--- a/include/internal/time64_helpers.h
+++ b/include/internal/time64_helpers.h
@@ -5,11 +5,6 @@
 #include <time.h>
 #include <stddef.h>
 
-struct __ts32_struct {
-   __S32_TYPE tv_sec;
-   __S32_TYPE tv_nsec;
-};
-
 struct __ts64_struct {
    __S64_TYPE tv_sec;
    __S64_TYPE tv_nsec;
diff --git a/libc/sysdeps/linux/arm/bits/kernel_stat.h 
b/libc/sysdeps/linux/arm/bits/kernel_stat.h
index 45c8e9681..cdbeeb4de 100644
--- a/libc/sysdeps/linux/arm/bits/kernel_stat.h
+++ b/libc/sysdeps/linux/arm/bits/kernel_stat.h
@@ -5,10 +5,6 @@
  * struct kernel_stat should look like...  It turns out each arch has a
  * different opinion on the subject... */
 
-#if defined(__UCLIBC_USE_TIME64__)
-#include "internal/time64_helpers.h"
-#endif
-
 struct kernel_stat {
 #if defined(__ARMEB__)
        unsigned short st_dev;
@@ -30,15 +26,9 @@ struct kernel_stat {
        unsigned long  st_size;
        unsigned long  st_blksize;
        unsigned long  st_blocks;
-#if defined(__UCLIBC_USE_TIME64__)
-       struct __ts32_struct __st_atim32;
-       struct __ts32_struct __st_mtim32;
-       struct __ts32_struct __st_ctim32;
-#else
        struct timespec st_atim;
        struct timespec st_mtim;
        struct timespec st_ctim;
-#endif
        unsigned long  __uclibc_unused4;
        unsigned long  __uclibc_unused5;
 };
@@ -60,15 +50,9 @@ struct kernel_stat64 {
        long long          st_size;
        unsigned long      st_blksize;
        unsigned long long st_blocks;  /* Number 512-byte blocks allocated. */
-#if defined(__UCLIBC_USE_TIME64__)
-       struct __ts32_struct __st_atim32;
-       struct __ts32_struct __st_mtim32;
-       struct __ts32_struct __st_ctim32;
-#else
        struct timespec    st_atim;
        struct timespec    st_mtim;
        struct timespec    st_ctim;
-#endif
        unsigned long long st_ino;
 #ifndef __ARM_EABI__
 } __attribute__((packed));
diff --git a/libc/sysdeps/linux/common/xstatconv.c 
b/libc/sysdeps/linux/common/xstatconv.c
index 391804e66..d50fbf9c3 100644
--- a/libc/sysdeps/linux/common/xstatconv.c
+++ b/libc/sysdeps/linux/common/xstatconv.c
@@ -37,21 +37,12 @@ void __xstat_conv(struct kernel_stat *kbuf, struct stat 
*buf)
        buf->st_size = kbuf->st_size;
        buf->st_blksize = kbuf->st_blksize;
        buf->st_blocks = kbuf->st_blocks;
-#if defined(__UCLIBC_USE_TIME64__) && !defined(__mips__)
-       buf->st_atim.tv_sec = kbuf->__st_atim32.tv_sec;
-       buf->st_atim.tv_nsec = kbuf->__st_atim32.tv_nsec;
-       buf->st_mtim.tv_sec = kbuf->__st_mtim32.tv_sec;
-       buf->st_mtim.tv_nsec = kbuf->__st_mtim32.tv_nsec;
-       buf->st_ctim.tv_sec = kbuf->__st_ctim32.tv_sec;
-       buf->st_ctim.tv_nsec = kbuf->__st_ctim32.tv_nsec;
-#else
        buf->st_atim.tv_sec = kbuf->st_atim.tv_sec;
        buf->st_atim.tv_nsec = kbuf->st_atim.tv_nsec;
        buf->st_mtim.tv_sec = kbuf->st_mtim.tv_sec;
        buf->st_mtim.tv_nsec = kbuf->st_mtim.tv_nsec;
        buf->st_ctim.tv_sec = kbuf->st_ctim.tv_sec;
        buf->st_ctim.tv_nsec = kbuf->st_ctim.tv_nsec;
-#endif
 }
 
 void __xstat32_conv(struct kernel_stat64 *kbuf, struct stat *buf)
@@ -68,21 +59,12 @@ void __xstat32_conv(struct kernel_stat64 *kbuf, struct stat 
*buf)
        buf->st_size = kbuf->st_size;
        buf->st_blksize = kbuf->st_blksize;
        buf->st_blocks = kbuf->st_blocks;
-#if defined(__UCLIBC_USE_TIME64__) && !defined(__mips__)
-       buf->st_atim.tv_sec = kbuf->__st_atim32.tv_sec;
-       buf->st_atim.tv_nsec = kbuf->__st_atim32.tv_nsec;
-       buf->st_mtim.tv_sec = kbuf->__st_mtim32.tv_sec;
-       buf->st_mtim.tv_nsec = kbuf->__st_mtim32.tv_nsec;
-       buf->st_ctim.tv_sec = kbuf->__st_ctim32.tv_sec;
-       buf->st_ctim.tv_nsec = kbuf->__st_ctim32.tv_nsec;
-#else
        buf->st_atim.tv_sec = kbuf->st_atim.tv_sec;
        buf->st_atim.tv_nsec = kbuf->st_atim.tv_nsec;
        buf->st_mtim.tv_sec = kbuf->st_mtim.tv_sec;
        buf->st_mtim.tv_nsec = kbuf->st_mtim.tv_nsec;
        buf->st_ctim.tv_sec = kbuf->st_ctim.tv_sec;
        buf->st_ctim.tv_nsec = kbuf->st_ctim.tv_nsec;
-#endif
 }
 
 void __xstat64_conv(struct kernel_stat64 *kbuf, struct stat64 *buf)
@@ -102,19 +84,10 @@ void __xstat64_conv(struct kernel_stat64 *kbuf, struct 
stat64 *buf)
        buf->st_size = kbuf->st_size;
        buf->st_blksize = kbuf->st_blksize;
        buf->st_blocks = kbuf->st_blocks;
-#if defined(__UCLIBC_USE_TIME64__) && !defined(__mips__)
-       buf->st_atim.tv_sec = kbuf->__st_atim32.tv_sec;
-       buf->st_atim.tv_nsec = kbuf->__st_atim32.tv_nsec;
-       buf->st_mtim.tv_sec = kbuf->__st_mtim32.tv_sec;
-       buf->st_mtim.tv_nsec = kbuf->__st_mtim32.tv_nsec;
-       buf->st_ctim.tv_sec = kbuf->__st_ctim32.tv_sec;
-       buf->st_ctim.tv_nsec = kbuf->__st_ctim32.tv_nsec;
-#else
        buf->st_atim.tv_sec = kbuf->st_atim.tv_sec;
        buf->st_atim.tv_nsec = kbuf->st_atim.tv_nsec;
        buf->st_mtim.tv_sec = kbuf->st_mtim.tv_sec;
        buf->st_mtim.tv_nsec = kbuf->st_mtim.tv_nsec;
        buf->st_ctim.tv_sec = kbuf->st_ctim.tv_sec;
        buf->st_ctim.tv_nsec = kbuf->st_ctim.tv_nsec;
-#endif
 }
diff --git a/libc/sysdeps/linux/or1k/bits/kernel_stat.h 
b/libc/sysdeps/linux/or1k/bits/kernel_stat.h
index cec44ecfc..2e5eab901 100644
--- a/libc/sysdeps/linux/or1k/bits/kernel_stat.h
+++ b/libc/sysdeps/linux/or1k/bits/kernel_stat.h
@@ -1,10 +1,6 @@
 #ifndef _BITS_STAT_STRUCT_H
 #define _BITS_STAT_STRUCT_H
 
-#if defined(__UCLIBC_USE_TIME64__)
-#include "internal/time64_helpers.h"
-#endif
-
 struct kernel_stat {
        unsigned long   st_dev;         /* Device.  */
        unsigned long   st_ino;         /* File serial number.  */
@@ -18,15 +14,9 @@ struct kernel_stat {
        int             st_blksize;     /* Optimal block size for I/O.  */
        int             __pad2;
        long            st_blocks;      /* Number 512-byte blocks allocated. */
-#if defined(__UCLIBC_USE_TIME64__)
-       struct __ts32_struct __st_atim32;
-       struct __ts32_struct __st_mtim32;
-       struct __ts32_struct __st_ctim32;
-#else
        struct timespec st_atim;
        struct timespec st_mtim;
        struct timespec st_ctim;
-#endif
        unsigned int    __unused4;
        unsigned int    __unused5;
 };
diff --git a/libc/sysdeps/linux/powerpc/bits/kernel_stat.h 
b/libc/sysdeps/linux/powerpc/bits/kernel_stat.h
index c28ef2a9a..023eefeea 100644
--- a/libc/sysdeps/linux/powerpc/bits/kernel_stat.h
+++ b/libc/sysdeps/linux/powerpc/bits/kernel_stat.h
@@ -5,10 +5,6 @@
  * struct kernel_stat should look like...  It turns out each arch has a
  * different opinion on the subject... */
 
-#if defined(__UCLIBC_USE_TIME64__)
-#include "internal/time64_helpers.h"
-#endif
-
 #if __WORDSIZE == 64
 #define kernel_stat kernel_stat64
 #else
@@ -23,15 +19,9 @@ struct kernel_stat {
        __kernel_off_t  st_size;
        unsigned long   st_blksize;
        unsigned long   st_blocks;
-#if defined(__UCLIBC_USE_TIME64__)
-       struct __ts32_struct __st_atim32;
-       struct __ts32_struct __st_mtim32;
-       struct __ts32_struct __st_ctim32;
-#else
        struct timespec st_atim;
        struct timespec st_mtim;
        struct timespec st_ctim;
-#endif
        unsigned long   __unused4;
        unsigned long   __unused5;
 };
@@ -49,15 +39,9 @@ struct kernel_stat64 {
        long long st_size;              /* Size of file, in bytes.  */
        long st_blksize;                /* Optimal block size for I/O.  */
        long long st_blocks;            /* Number 512-byte blocks allocated. */
-#if defined(__UCLIBC_USE_TIME64__)
-       struct __ts32_struct __st_atim32;
-       struct __ts32_struct __st_mtim32;
-       struct __ts32_struct __st_ctim32;
-#else
        struct timespec st_atim;
        struct timespec st_mtim;
        struct timespec st_ctim;
-#endif
        unsigned long int __uclibc_unused4;
        unsigned long int __uclibc_unused5;
 };
diff --git a/libc/sysdeps/linux/sparc/bits/kernel_stat.h 
b/libc/sysdeps/linux/sparc/bits/kernel_stat.h
index 5e214c72f..e960857fe 100644
--- a/libc/sysdeps/linux/sparc/bits/kernel_stat.h
+++ b/libc/sysdeps/linux/sparc/bits/kernel_stat.h
@@ -5,10 +5,6 @@
  * struct kernel_stat should look like...  It turns out each arch has a
  * different opinion on the subject... */
 
-#if defined(__UCLIBC_USE_TIME64__)
-#include "internal/time64_helpers.h"
-#endif
-
 struct kernel_stat {
     unsigned short     st_dev;
     unsigned long      st_ino;
@@ -18,15 +14,9 @@ struct kernel_stat {
     unsigned short     st_gid;
     unsigned short     st_rdev;
     long               st_size;
-#if defined(__UCLIBC_USE_TIME64__)
-    struct __ts32_struct __st_atim32;
-    struct __ts32_struct __st_mtim32;
-    struct __ts32_struct __st_ctim32;
-#else
     struct timespec    st_atim;
     struct timespec    st_mtim;
     struct timespec    st_ctim;
-#endif
     long               st_blksize;
     long               st_blocks;
     unsigned long      __unused4[2];
@@ -45,15 +35,9 @@ struct kernel_stat64 {
        unsigned int    st_blksize;
        unsigned char   __pad4[8];
        unsigned int    st_blocks;
-#if defined(__UCLIBC_USE_TIME64__)
-       struct __ts32_struct __st_atim32;
-       struct __ts32_struct __st_mtim32;
-       struct __ts32_struct __st_ctim32;
-#else
        struct timespec st_atim;
        struct timespec st_mtim;
        struct timespec st_ctim;
-#endif
        unsigned int    __unused4;
        unsigned int    __unused5;
 };
diff --git a/libc/sysdeps/linux/xtensa/bits/kernel_stat.h 
b/libc/sysdeps/linux/xtensa/bits/kernel_stat.h
index 07ff39540..d884344d3 100644
--- a/libc/sysdeps/linux/xtensa/bits/kernel_stat.h
+++ b/libc/sysdeps/linux/xtensa/bits/kernel_stat.h
@@ -5,10 +5,6 @@
  * struct kernel_stat should look like...  It turns out each arch has a
  * different opinion on the subject... */
 
-#if defined(__UCLIBC_USE_TIME64__)
-#include "internal/time64_helpers.h"
-#endif
-
 struct kernel_stat {
        unsigned long   st_dev;
        unsigned long   st_ino;
@@ -20,15 +16,9 @@ struct kernel_stat {
        long            st_size;
        unsigned long   st_blksize;
        unsigned long   st_blocks;
-#if defined(__UCLIBC_USE_TIME64__)
-       struct __ts32_struct __st_atim32;
-       struct __ts32_struct __st_mtim32;
-       struct __ts32_struct __st_ctim32;
-#else
        struct timespec st_atim;
        struct timespec st_mtim;
        struct timespec st_ctim;
-#endif
        unsigned long   __unused4;
        unsigned long   __unused5;
 };
@@ -45,15 +35,9 @@ struct kernel_stat64 {
        unsigned long st_blksize;       /* Optimal block size for I/O. */
        unsigned long __uclibc_unused2;
        unsigned long long st_blocks;   /* Number 512-byte blocks allocated. */
-#if defined(__UCLIBC_USE_TIME64__)
-       struct __ts32_struct __st_atim32;
-       struct __ts32_struct __st_mtim32;
-       struct __ts32_struct __st_ctim32;
-#else
        struct timespec st_atim;        /* Time of last access. */
        struct timespec st_mtim;        /* Time of last modification. */
        struct timespec st_ctim;        /* Time of last status change. */
-#endif
        unsigned long __uclibc_unused4;
        unsigned long __uclibc_unused5;
 };
-- 
2.44.0

_______________________________________________
devel mailing list -- devel@uclibc-ng.org
To unsubscribe send an email to devel-le...@uclibc-ng.org

Reply via email to