drm/drm_crtc: return -EFAULT on copy_to_user errors
authorDan Carpenter <error27@gmail.com>
Fri, 4 Jun 2010 10:23:21 +0000 (12:23 +0200)
committerDave Airlie <airlied@redhat.com>
Mon, 7 Jun 2010 23:33:35 +0000 (09:33 +1000)
copy_from_user() returns the number of bytes left to be copied but we
want to return a negative error code here.  This is in the ioctl handler
so the error code get returned to userspace.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
drivers/gpu/drm/drm_crtc.c

index 994d23beeb1d68dce7032abf5cc347c4f3027c44..57cea01c4ffb25cb62b7b46007853c506a5c15a3 100644 (file)
@@ -1840,8 +1840,10 @@ int drm_mode_dirtyfb_ioctl(struct drm_device *dev,
 
                ret = copy_from_user(clips, clips_ptr,
                                     num_clips * sizeof(*clips));
-               if (ret)
+               if (ret) {
+                       ret = -EFAULT;
                        goto out_err2;
+               }
        }
 
        if (fb->funcs->dirty) {