|
@@ -1016,6 +1016,7 @@ SYSCALL_DEFINE2(osf_gettimeofday, struct timeval32 __user *, tv,
|
|
|
SYSCALL_DEFINE2(osf_settimeofday, struct timeval32 __user *, tv,
|
|
|
struct timezone __user *, tz)
|
|
|
{
|
|
|
+ struct timespec64 kts64;
|
|
|
struct timespec kts;
|
|
|
struct timezone ktz;
|
|
|
|
|
@@ -1023,13 +1024,14 @@ SYSCALL_DEFINE2(osf_settimeofday, struct timeval32 __user *, tv,
|
|
|
if (get_tv32((struct timeval *)&kts, tv))
|
|
|
return -EFAULT;
|
|
|
kts.tv_nsec *= 1000;
|
|
|
+ kts64 = timespec_to_timespec64(kts);
|
|
|
}
|
|
|
if (tz) {
|
|
|
if (copy_from_user(&ktz, tz, sizeof(*tz)))
|
|
|
return -EFAULT;
|
|
|
}
|
|
|
|
|
|
- return do_sys_settimeofday(tv ? &kts : NULL, tz ? &ktz : NULL);
|
|
|
+ return do_sys_settimeofday64(tv ? &kts64 : NULL, tz ? &ktz : NULL);
|
|
|
}
|
|
|
|
|
|
asmlinkage long sys_ni_posix_timers(void);
|