summaryrefslogtreecommitdiff
path: root/shared-core/i915_dma.c
diff options
context:
space:
mode:
authorEric Anholt <eric@anholt.net>2008-05-09 14:34:20 -0700
committerEric Anholt <eric@anholt.net>2008-05-09 17:38:32 -0700
commitc5c59eab809604e4d0d4d1dc71fc11186d0220f8 (patch)
treeaa6fd6723baf5e9d1187938e58b25fcd3c0e05d8 /shared-core/i915_dma.c
parentf56f2acb5a3f34ad6916ff315d3d2058bd4b8f9c (diff)
GEM: Separate the LRU into execution list and LRU list.
Now, the LRU list has objects that are completely done rendering and ready to kick out, while the execution list has things with active rendering, which have associated cookies and reference counts on them.
Diffstat (limited to 'shared-core/i915_dma.c')
-rw-r--r--shared-core/i915_dma.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/shared-core/i915_dma.c b/shared-core/i915_dma.c
index 0601b89c..24f361e0 100644
--- a/shared-core/i915_dma.c
+++ b/shared-core/i915_dma.c
@@ -1052,6 +1052,7 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
_DRM_KERNEL | _DRM_DRIVER, &dev_priv->mmio_map);
INIT_LIST_HEAD(&dev_priv->mm.gtt_lru);
+ INIT_LIST_HEAD(&dev_priv->mm.execution_list);
#ifdef __linux__
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,25)
@@ -1093,6 +1094,7 @@ void i915_driver_lastclose(struct drm_device * dev)
dev_priv->val_bufs = NULL;
}
#endif
+ i915_gem_lastclose(dev);
if (drm_getsarea(dev) && dev_priv->sarea_priv)
i915_do_cleanup_pageflip(dev);