From 8d2d5c4a251924e4f70657e96a2a3f87647544f0 Mon Sep 17 00:00:00 2001 From: Al Viro Date: Sun, 3 Mar 2013 12:49:06 -0500 Subject: switch getrusage() to COMPAT_SYSCALL_DEFINE Signed-off-by: Al Viro --- kernel/sys.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'kernel/sys.c') diff --git a/kernel/sys.c b/kernel/sys.c index 81f56445fba9..fd2b5259ad7a 100644 --- a/kernel/sys.c +++ b/kernel/sys.c @@ -1784,6 +1784,20 @@ SYSCALL_DEFINE2(getrusage, int, who, struct rusage __user *, ru) return getrusage(current, who, ru); } +#ifdef CONFIG_COMPAT +COMPAT_SYSCALL_DEFINE2(getrusage, int, who, struct compat_rusage __user *, ru) +{ + struct rusage r; + + if (who != RUSAGE_SELF && who != RUSAGE_CHILDREN && + who != RUSAGE_THREAD) + return -EINVAL; + + k_getrusage(current, who, &r); + return put_compat_rusage(&r, ru); +} +#endif + SYSCALL_DEFINE1(umask, int, mask) { mask = xchg(¤t->fs->umask, mask & S_IRWXUGO); -- cgit v1.2.3