Thread (8 messages) 8 messages, 2 authors, 2018-09-18

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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help