(root)/
glibc-2.38/
include/
struct___timespec64.h
       1  #ifndef _STRUCT_TIMESPEC64_H
       2  #define _STRUCT_TIMESPEC64_H
       3  
       4  #if __TIMESIZE == 64
       5  # define __timespec64 timespec
       6  #else
       7  #include <endian.h>
       8  /* The glibc Y2038-proof struct __timespec64 structure for a time value.
       9     To keep things Posix-ish, we keep the nanoseconds field a 32-bit
      10     signed long, but since the Linux field is a 64-bit signed int, we
      11     pad our tv_nsec with a 32-bit unnamed bit-field padding.
      12  
      13     As a general rule the Linux kernel is ignoring upper 32 bits of
      14     tv_nsec field.  */
      15  struct __timespec64
      16  {
      17    __time64_t tv_sec;         /* Seconds */
      18  # if BYTE_ORDER == BIG_ENDIAN
      19    __int32_t :32;             /* Padding */
      20    __int32_t tv_nsec;         /* Nanoseconds */
      21  # else
      22    __int32_t tv_nsec;         /* Nanoseconds */
      23    __int32_t :32;             /* Padding */
      24  # endif
      25  };
      26  #endif
      27  #endif /* _STRUCT_TIMESPEC64_H  */