summaryrefslogtreecommitdiff
path: root/sys/dev/pci/drm/i915_gem.c
diff options
context:
space:
mode:
authorJonathan Gray <jsg@jsg.id.au>2013-02-22 15:49:33 +1100
committerJonathan Gray <jsg@jsg.id.au>2013-02-22 15:49:33 +1100
commitb56ac9dabf04df930f8865f34ce1a407a49018f3 (patch)
tree4e9da6b0a40904a3571b8ac28a12afc28078ce73 /sys/dev/pci/drm/i915_gem.c
parent68b6a56f62aedd02069f8576ff83bff13e27e018 (diff)
change i915 list_del calls to list_del_init
seems to fix (or hide?) objpl corruption on x40
Diffstat (limited to 'sys/dev/pci/drm/i915_gem.c')
-rw-r--r--sys/dev/pci/drm/i915_gem.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/dev/pci/drm/i915_gem.c b/sys/dev/pci/drm/i915_gem.c
index d6d40bf2f4a..7554277e74b 100644
--- a/sys/dev/pci/drm/i915_gem.c
+++ b/sys/dev/pci/drm/i915_gem.c
@@ -867,7 +867,7 @@ i915_gem_object_move_to_inactive_locked(struct drm_i915_gem_object *obj)
inteldrm_verify_inactive(dev_priv, __FILE__, __LINE__);
if (obj->pin_count != 0)
- list_del(&obj->mm_list);
+ list_del_init(&obj->mm_list);
else
list_move_tail(&obj->mm_list, &dev_priv->mm.inactive_list);
@@ -1092,7 +1092,7 @@ i915_gem_retire_requests_ring(struct intel_ring_buffer *ring)
*/
ring->last_retired_head = request->tail;
- list_del(&request->list);
+ list_del_init(&request->list);
mtx_leave(&dev_priv->request_lock);
drm_free(request);
@@ -1946,7 +1946,7 @@ i915_gem_object_pin(struct drm_i915_gem_object *obj, uint32_t alignment,
atomic_inc(&dev->pin_count);
atomic_add(obj->base.size, &dev->pin_memory);
if (!obj->active)
- list_del(&obj->mm_list);
+ list_del_init(&obj->mm_list);
}
inteldrm_verify_inactive(dev_priv, __FILE__, __LINE__);