blob: e70bfd1d2c3fe6f0a57e829911afa5af07faa1aa [file] [log] [blame]
Deepa Dinamani0d553032018-03-13 21:03:25 -07001/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef _LINUX_COMPAT_TIME_H
3#define _LINUX_COMPAT_TIME_H
4
5#include <linux/types.h>
Deepa Dinamani1c68adf2018-03-13 21:03:26 -07006#include <linux/time64.h>
Deepa Dinamani0d553032018-03-13 21:03:25 -07007
8typedef s32 compat_time_t;
9
10struct compat_timespec {
11 compat_time_t tv_sec;
12 s32 tv_nsec;
13};
14
15struct compat_timeval {
16 compat_time_t tv_sec;
17 s32 tv_usec;
18};
19
Deepa Dinamaniafef05c2018-06-16 22:11:43 -070020struct compat_itimerspec {
21 struct compat_timespec it_interval;
22 struct compat_timespec it_value;
23};
24
Deepa Dinamani1c68adf2018-03-13 21:03:26 -070025extern int compat_get_timespec64(struct timespec64 *, const void __user *);
26extern int compat_put_timespec64(const struct timespec64 *, void __user *);
Deepa Dinamaniafef05c2018-06-16 22:11:43 -070027extern int get_compat_itimerspec64(struct itimerspec64 *its,
28 const struct compat_itimerspec __user *uits);
29extern int put_compat_itimerspec64(const struct itimerspec64 *its,
30 struct compat_itimerspec __user *uits);
Deepa Dinamani1c68adf2018-03-13 21:03:26 -070031
Deepa Dinamani0d553032018-03-13 21:03:25 -070032#endif /* _LINUX_COMPAT_TIME_H */