Revert "don't copy back if an error was returned."
authorMichel Dänzer <michel@tungstengraphics.com>
Tue, 3 Jun 2008 09:27:39 +0000 (11:27 +0200)
committerMichel Dänzer <michel@tungstengraphics.com>
Tue, 3 Jun 2008 09:27:39 +0000 (11:27 +0200)
This reverts commit 6671ad1917698b6174a1af314b63b3800d75248c.

The vblank ioctl needs to update the userspace parameters when interrupted by
a signal, which was prevented by this. Let's see if this breaks other ioctls...

linux-core/drm_drv.c

index b8b8333..609fc83 100644 (file)
@@ -655,7 +655,7 @@ long drm_unlocked_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
                retcode = func(dev, kdata, file_priv);
        }
 
-       if ((retcode == 0) && (cmd & IOC_OUT)) {
+       if (cmd & IOC_OUT) {
                if (copy_to_user((void __user *)arg, kdata,
                                 _IOC_SIZE(cmd)) != 0)
                        retcode = -EACCES;