[PATCH] x86_64: Use common sys_time64
Keeping this function does not makes sense because it's a copied (and buggy) copy of sys_time. The only difference is that now.tv_sec (which is a time_t, i.e. a 64-bit long) is copied (and truncated) into a int (32-bit). The prototype is the same (they both take a long __user *), so let's drop this and redirect it to sys_time (and make sure it exists by defining __ARCH_WANT_SYS_TIME). Only disadvantage is that the sys_stime definition is also compiled (may be fixed if needed by adding a separate __ARCH_WANT_SYS_STIME macro, and defining it for all arch's defining __ARCH_WANT_SYS_TIME except x86_64). Acked-by: Andi Kleen <ak@suse.de> Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
bf0f2e2383
commit
efbbdce94f
|
@ -154,17 +154,3 @@ asmlinkage long sys_uname(struct new_utsname __user * name)
|
||||||
err |= copy_to_user(&name->machine, "i686", 5);
|
err |= copy_to_user(&name->machine, "i686", 5);
|
||||||
return err ? -EFAULT : 0;
|
return err ? -EFAULT : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
asmlinkage long sys_time64(long __user * tloc)
|
|
||||||
{
|
|
||||||
struct timeval now;
|
|
||||||
int i;
|
|
||||||
|
|
||||||
do_gettimeofday(&now);
|
|
||||||
i = now.tv_sec;
|
|
||||||
if (tloc) {
|
|
||||||
if (put_user(i,tloc))
|
|
||||||
i = -EFAULT;
|
|
||||||
}
|
|
||||||
return i;
|
|
||||||
}
|
|
||||||
|
|
|
@ -462,7 +462,7 @@ __SYSCALL(__NR_fremovexattr, sys_fremovexattr)
|
||||||
#define __NR_tkill 200
|
#define __NR_tkill 200
|
||||||
__SYSCALL(__NR_tkill, sys_tkill)
|
__SYSCALL(__NR_tkill, sys_tkill)
|
||||||
#define __NR_time 201
|
#define __NR_time 201
|
||||||
__SYSCALL(__NR_time, sys_time64)
|
__SYSCALL(__NR_time, sys_time)
|
||||||
#define __NR_futex 202
|
#define __NR_futex 202
|
||||||
__SYSCALL(__NR_futex, sys_futex)
|
__SYSCALL(__NR_futex, sys_futex)
|
||||||
#define __NR_sched_setaffinity 203
|
#define __NR_sched_setaffinity 203
|
||||||
|
@ -608,6 +608,7 @@ do { \
|
||||||
#define __ARCH_WANT_SYS_SIGPENDING
|
#define __ARCH_WANT_SYS_SIGPENDING
|
||||||
#define __ARCH_WANT_SYS_SIGPROCMASK
|
#define __ARCH_WANT_SYS_SIGPROCMASK
|
||||||
#define __ARCH_WANT_SYS_RT_SIGACTION
|
#define __ARCH_WANT_SYS_RT_SIGACTION
|
||||||
|
#define __ARCH_WANT_SYS_TIME
|
||||||
#define __ARCH_WANT_COMPAT_SYS_TIME
|
#define __ARCH_WANT_COMPAT_SYS_TIME
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue