media: v4l2-compat-ioctl32.c: don't copy back the result for certain errors
authorHans Verkuil <hans.verkuil@cisco.com>
Wed, 14 Feb 2018 11:48:29 +0000 (12:48 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 17 Feb 2018 12:21:17 +0000 (13:21 +0100)
commit d83a8243aaefe62ace433e4384a4f077bed86acb upstream.

Some ioctls need to copy back the result even if the ioctl returned
an error. However, don't do this for the error code -ENOTTY.
It makes no sense in that cases.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/media/v4l2-core/v4l2-compat-ioctl32.c

index 75653d7..a40f40f 100644 (file)
@@ -956,6 +956,9 @@ static long do_video_ioctl(struct file *file, unsigned int cmd, unsigned long ar
                set_fs(old_fs);
        }
 
+       if (err == -ENOTTY)
+               return err;
+
        /* Special case: even after an error we need to put the
           results back for these ioctls since the error_idx will
           contain information on which control failed. */