Re: [PATCH v3 4/5] pselect6: use __kernel_timespec
From: Deepa Dinamani <hidden>
Date: 2018-09-18 02:45:31
Also in:
linux-fsdevel, lkml
On Mon, Sep 17, 2018 at 1:34 PM Stepan Golosunov [off-list ref] wrote:
On Sun, Sep 16, 2018 at 06:04:57PM -0700, Deepa Dinamani wrote:quoted
static long do_compat_pselect(int n, compat_ulong_t __user *inp, compat_ulong_t __user *outp, compat_ulong_t __user *exp, - struct old_timespec32 __user *tsp, compat_sigset_t __user *sigmask, - compat_size_t sigsetsize) + void __user *tsp, compat_sigset_t __user *sigmask, + compat_size_t sigsetsize, enum poll_time_type type) { sigset_t ksigmask, sigsaved; struct timespec64 ts, end_time, *to = NULL; int ret; if (tsp) { - if (get_old_timespec32(&ts, tsp)) - return -EFAULT; + switch (type) { + case PT_OLD_TIMESPEC: + if (get_old_timespec32(&ts, tsp)) + return -EFAULT; + break; + case PT_TIMESPEC: + if (get_old_timespec32(&ts, tsp)) + return -EFAULT; + break; + default: + BUG(); + }One of the two get_old_timespec32 calls here should be get_timespec64.
Right. It is a copy paste bug. Thanks, Deepa