]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/gpu/drm/drm_drv.c
Merge remote-tracking branch 'drm-tegra/drm/for-next'
[karo-tx-linux.git] / drivers / gpu / drm / drm_drv.c
index 138de14134f034927b3ffb3cadf0fc466802db47..5b7054714475ef2b4ca45e42aa8b723de13b9cc3 100644 (file)
@@ -332,9 +332,16 @@ long drm_ioctl(struct file *filp,
                cmd = ioctl->cmd_drv;
        }
        else if ((nr >= DRM_COMMAND_END) || (nr < DRM_COMMAND_BASE)) {
+               u32 drv_size;
+
                ioctl = &drm_ioctls[nr];
-               cmd = ioctl->cmd;
+
+               drv_size = _IOC_SIZE(ioctl->cmd);
                usize = asize = _IOC_SIZE(cmd);
+               if (drv_size > asize)
+                       asize = drv_size;
+
+               cmd = ioctl->cmd;
        } else
                goto err_i1;