diff --git a/[refs] b/[refs] index 6794f0fbbdeb..142d1bd6c50a 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 8d9807b109497ca41d363dc7b6ff2bb6c0d52524 +refs/heads/master: a566c288826ad4502e43b59570214f18173d7744 diff --git a/trunk/kernel/compat.c b/trunk/kernel/compat.c index 0770ac57c62b..e5cc33c7122c 100644 --- a/trunk/kernel/compat.c +++ b/trunk/kernel/compat.c @@ -587,7 +587,11 @@ COMPAT_SYSCALL_DEFINE5(waitid, return ret; if (uru) { - ret = put_compat_rusage(&ru, uru); + /* sys_waitid() overwrites everything in ru */ + if (COMPAT_USE_64BIT_TIME) + ret = copy_to_user(uru, &ru, sizeof(ru)); + else + ret = put_compat_rusage(&ru, uru); if (ret) return ret; }