diff options
author | Kristian Høgsberg <krh@redhat.com> | 2009-03-03 14:45:57 -0500 |
---|---|---|
committer | Eric Anholt <eric@anholt.net> | 2009-03-10 16:11:11 -0400 |
commit | b70d11da61d751ad968c6f686d83ac1b0ae41466 (patch) | |
tree | 388afdd8b085860e1f5ac7e3bc50b6d56ab1325e /drivers/gpu/drm/i915/i915_drv.h | |
parent | 99adcd9d67aaf04e28f5ae96df280f236bde4b66 (diff) |
drm: Return EINVAL on duplicate objects in execbuffer object list
If userspace passes an object list with the same object appearing more
than once, we end up hitting the BUG_ON() in
i915_gem_object_set_to_gpu_domain() as it gets called a second time
for the same object.
Signed-off-by: Kristian Høgsberg <krh@redhat.com>
Signed-off-by: Eric Anholt <eric@anholt.net>
Diffstat (limited to 'drivers/gpu/drm/i915/i915_drv.h')
-rw-r--r-- | drivers/gpu/drm/i915/i915_drv.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h index 17fa40858d2..9186d43be01 100644 --- a/drivers/gpu/drm/i915/i915_drv.h +++ b/drivers/gpu/drm/i915/i915_drv.h | |||
@@ -457,6 +457,12 @@ struct drm_i915_gem_object { | |||
457 | 457 | ||
458 | /** for phy allocated objects */ | 458 | /** for phy allocated objects */ |
459 | struct drm_i915_gem_phys_object *phys_obj; | 459 | struct drm_i915_gem_phys_object *phys_obj; |
460 | |||
461 | /** | ||
462 | * Used for checking the object doesn't appear more than once | ||
463 | * in an execbuffer object list. | ||
464 | */ | ||
465 | int in_execbuffer; | ||
460 | }; | 466 | }; |
461 | 467 | ||
462 | /** | 468 | /** |