master
 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.  */
15struct __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  */