diff options
author | Hauke Mehrtens <hauke@hauke-m.de> | 2013-08-18 22:10:32 +0200 |
---|---|---|
committer | Hauke Mehrtens <hauke@hauke-m.de> | 2013-10-21 23:58:37 +0200 |
commit | fc866fa8b6ace7159b46cd219f3ea795effa4267 (patch) | |
tree | 834d3555068e6232541664385cb338e87438c6b6 /patches/collateral-evolutions/drm/14-shrinkers-api/drivers_gpu_drm_i915.patch | |
parent | 3455026991cda1129ae313830ecd7386f75362a5 (diff) |
backports: fix intel i915 drm driver
The intel i915 drm driver uses the declarations from intel-gtt.h to
interact with drivers/char/agp/intel-gtt.c which is not
backported by backports project. To prevent some strange problems when
using i915, use the headers from the kernel and do not use our own. This
causes some compile problems which where runtime problems before and
bumps the minimal kernel version to 3.7.
This i915 still crash on my device with kernel 3.7.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
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.patch | 12 |
1 files changed, 6 insertions, 6 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 96333f87..ec1b0465 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 @@ -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); -@@ -4409,8 +4414,12 @@ i915_gem_load(struct drm_device *dev) +@@ -4394,8 +4399,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); } -@@ -4633,8 +4642,14 @@ static bool mutex_is_locked_by(struct mu +@@ -4618,8 +4627,14 @@ static bool mutex_is_locked_by(struct mu #endif } @@ -70,7 +70,7 @@ { struct drm_i915_private *dev_priv = container_of(shrinker, -@@ -4644,7 +4659,12 @@ i915_gem_inactive_count(struct shrinker +@@ -4629,7 +4644,12 @@ i915_gem_inactive_count(struct shrinker struct i915_address_space *vm = &dev_priv->gtt.base; struct drm_i915_gem_object *obj; bool unlock = true; @@ -83,7 +83,7 @@ if (!mutex_trylock(&dev->struct_mutex)) { if (!mutex_is_locked_by(&dev->struct_mutex, current)) -@@ -4656,6 +4676,17 @@ i915_gem_inactive_count(struct shrinker +@@ -4641,6 +4661,17 @@ i915_gem_inactive_count(struct shrinker unlock = false; } @@ -101,7 +101,7 @@ count = 0; list_for_each_entry(obj, &dev_priv->mm.unbound_list, global_list) if (obj->pages_pin_count == 0) -@@ -4669,6 +4700,7 @@ i915_gem_inactive_count(struct shrinker +@@ -4654,6 +4685,7 @@ i915_gem_inactive_count(struct shrinker return count; } @@ -109,7 +109,7 @@ static unsigned long i915_gem_inactive_scan(struct shrinker *shrinker, struct shrink_control *sc) { -@@ -4702,3 +4734,4 @@ i915_gem_inactive_scan(struct shrinker * +@@ -4687,3 +4719,4 @@ i915_gem_inactive_scan(struct shrinker * mutex_unlock(&dev->struct_mutex); return freed; } |