media: v4l2-ioctl.c: don't copy back the result for -ENOTTY
authorHans Verkuil <hans.verkuil@cisco.com>
Tue, 30 Jan 2018 08:50:01 +0000 (03:50 -0500)
committerMauro Carvalho Chehab <mchehab@s-opensource.com>
Tue, 30 Jan 2018 12:23:04 +0000 (07:23 -0500)
If the ioctl returned -ENOTTY, then don't bother copying
back the result as there is no point.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Cc: <stable@vger.kernel.org> # for v4.15 and up
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
drivers/media/v4l2-core/v4l2-ioctl.c

index c7f6b65..260288c 100644 (file)
@@ -2900,8 +2900,11 @@ video_usercopy(struct file *file, unsigned int cmd, unsigned long arg,
 
        /* Handles IOCTL */
        err = func(file, cmd, parg);
-       if (err == -ENOIOCTLCMD)
+       if (err == -ENOTTY || err == -ENOIOCTLCMD) {
                err = -ENOTTY;
+               goto out;
+       }
+
        if (err == 0) {
                if (cmd == VIDIOC_DQBUF)
                        trace_v4l2_dqbuf(video_devdata(file)->minor, parg);