summaryrefslogtreecommitdiff
path: root/patches/collateral-evolutions/drm/14-shrinkers-api/drivers_gpu_drm_i915.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patches/collateral-evolutions/drm/14-shrinkers-api/drivers_gpu_drm_i915.patch')
-rw-r--r--patches/collateral-evolutions/drm/14-shrinkers-api/drivers_gpu_drm_i915.patch22
1 files changed, 11 insertions, 11 deletions
diff --git a/patches/collateral-evolutions/drm/14-shrinkers-api/drivers_gpu_drm_i915.patch b/patches/collateral-evolutions/drm/14-shrinkers-api/drivers_gpu_drm_i915.patch
index ec1b0465..eca58043 100644
--- a/patches/collateral-evolutions/drm/14-shrinkers-api/drivers_gpu_drm_i915.patch
+++ b/patches/collateral-evolutions/drm/14-shrinkers-api/drivers_gpu_drm_i915.patch
@@ -1,6 +1,6 @@
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
-@@ -1652,7 +1652,11 @@ int i915_driver_load(struct drm_device *
+@@ -1648,7 +1648,11 @@ int i915_driver_load(struct drm_device *
return 0;
out_gem_unload:
@@ -12,7 +12,7 @@
unregister_shrinker(&dev_priv->mm.inactive_shrinker);
if (dev->pdev->msi_enabled)
-@@ -1686,7 +1690,11 @@ int i915_driver_unload(struct drm_device
+@@ -1682,7 +1686,11 @@ int i915_driver_unload(struct drm_device
i915_teardown_sysfs(dev);
@@ -26,7 +26,7 @@
mutex_lock(&dev->struct_mutex);
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
-@@ -54,10 +54,15 @@ static void i915_gem_object_update_fence
+@@ -56,10 +56,15 @@ static void i915_gem_object_update_fence
struct drm_i915_fence_reg *fence,
bool enable);
@@ -42,7 +42,7 @@
static long i915_gem_purge(struct drm_i915_private *dev_priv, long target);
static long i915_gem_shrink_all(struct drm_i915_private *dev_priv);
static void i915_gem_object_truncate(struct drm_i915_gem_object *obj);
-@@ -4394,8 +4399,12 @@ i915_gem_load(struct drm_device *dev)
+@@ -4464,8 +4469,12 @@ i915_gem_load(struct drm_device *dev)
dev_priv->mm.interruptible = true;
@@ -55,7 +55,7 @@
dev_priv->mm.inactive_shrinker.seeks = DEFAULT_SEEKS;
register_shrinker(&dev_priv->mm.inactive_shrinker);
}
-@@ -4618,8 +4627,14 @@ static bool mutex_is_locked_by(struct mu
+@@ -4688,8 +4697,14 @@ static bool mutex_is_locked_by(struct mu
#endif
}
@@ -70,8 +70,8 @@
{
struct drm_i915_private *dev_priv =
container_of(shrinker,
-@@ -4629,7 +4644,12 @@ i915_gem_inactive_count(struct shrinker
- struct i915_address_space *vm = &dev_priv->gtt.base;
+@@ -4698,7 +4713,12 @@ i915_gem_inactive_count(struct shrinker
+ struct drm_device *dev = dev_priv->dev;
struct drm_i915_gem_object *obj;
bool unlock = true;
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,12,0))
@@ -83,7 +83,7 @@
if (!mutex_trylock(&dev->struct_mutex)) {
if (!mutex_is_locked_by(&dev->struct_mutex, current))
-@@ -4641,6 +4661,17 @@ i915_gem_inactive_count(struct shrinker
+@@ -4710,6 +4730,17 @@ i915_gem_inactive_count(struct shrinker
unlock = false;
}
@@ -101,15 +101,15 @@
count = 0;
list_for_each_entry(obj, &dev_priv->mm.unbound_list, global_list)
if (obj->pages_pin_count == 0)
-@@ -4654,6 +4685,7 @@ i915_gem_inactive_count(struct shrinker
- return count;
+@@ -4800,6 +4831,7 @@ struct i915_vma *i915_gem_obj_to_vma(str
+ return NULL;
}
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,12,0))
static unsigned long
i915_gem_inactive_scan(struct shrinker *shrinker, struct shrink_control *sc)
{
-@@ -4687,3 +4719,4 @@ i915_gem_inactive_scan(struct shrinker *
+@@ -4833,3 +4865,4 @@ i915_gem_inactive_scan(struct shrinker *
mutex_unlock(&dev->struct_mutex);
return freed;
}