|
@@ -1123,6 +1123,11 @@ i915_gem_do_execbuffer(struct drm_device *dev, void *data,
|
|
ret = -EFAULT;
|
|
ret = -EFAULT;
|
|
goto pre_mutex_err;
|
|
goto pre_mutex_err;
|
|
}
|
|
}
|
|
|
|
+ } else {
|
|
|
|
+ if (args->DR1 || args->DR4 || args->cliprects_ptr) {
|
|
|
|
+ DRM_DEBUG("0 cliprects but dirt in cliprects fields\n");
|
|
|
|
+ return -EINVAL;
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
intel_runtime_pm_get(dev_priv);
|
|
intel_runtime_pm_get(dev_priv);
|
|
@@ -1400,6 +1405,11 @@ i915_gem_execbuffer2(struct drm_device *dev, void *data,
|
|
return -EINVAL;
|
|
return -EINVAL;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ if (args->rsvd2 != 0) {
|
|
|
|
+ DRM_DEBUG("dirty rvsd2 field\n");
|
|
|
|
+ return -EINVAL;
|
|
|
|
+ }
|
|
|
|
+
|
|
exec2_list = kmalloc(sizeof(*exec2_list)*args->buffer_count,
|
|
exec2_list = kmalloc(sizeof(*exec2_list)*args->buffer_count,
|
|
GFP_TEMPORARY | __GFP_NOWARN | __GFP_NORETRY);
|
|
GFP_TEMPORARY | __GFP_NOWARN | __GFP_NORETRY);
|
|
if (exec2_list == NULL)
|
|
if (exec2_list == NULL)
|