]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
media: v4l2-compat-ioctl32.c: don't copy back the result for certain errors
authorHans Verkuil <hans.verkuil@cisco.com>
Wed, 28 Mar 2018 18:12:32 +0000 (15:12 -0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 8 Apr 2018 09:49:47 +0000 (11:49 +0200)
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: Sasha Levin <alexander.levin@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/media/v4l2-core/v4l2-compat-ioctl32.c

index a5f74a508f58496bfacb5fc088cefccf9d468028..9e5807842dadb81faf91263696a817993b18274d 100644 (file)
@@ -943,6 +943,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. */