time: introduce {get,put}_itimerspec64
As we change the user space type for the timerfd and posix timer functions to newer data types, we need some form of conversion helpers to avoid duplicating that logic. Suggested-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Deepa Dinamani <deepa.kernel@gmail.com> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
@@ -586,6 +586,27 @@ int put_compat_itimerspec(struct compat_itimerspec __user *dst,
|
||||
return 0;
|
||||
}
|
||||
|
||||
int get_compat_itimerspec64(struct itimerspec64 *its,
|
||||
const struct compat_itimerspec __user *uits)
|
||||
{
|
||||
|
||||
if (__compat_get_timespec64(&its->it_interval, &uits->it_interval) ||
|
||||
__compat_get_timespec64(&its->it_value, &uits->it_value))
|
||||
return -EFAULT;
|
||||
return 0;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(get_compat_itimerspec64);
|
||||
|
||||
int put_compat_itimerspec64(const struct itimerspec64 *its,
|
||||
struct compat_itimerspec __user *uits)
|
||||
{
|
||||
if (__compat_put_timespec64(&its->it_interval, &uits->it_interval) ||
|
||||
__compat_put_timespec64(&its->it_value, &uits->it_value))
|
||||
return -EFAULT;
|
||||
return 0;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(put_compat_itimerspec64);
|
||||
|
||||
/*
|
||||
* We currently only need the following fields from the sigevent
|
||||
* structure: sigev_value, sigev_signo, sig_notify and (sometimes
|
||||
|
Reference in New Issue
Block a user