Hi all,

Today's linux-next merge of the drm-intel tree got a conflict in
drivers/gpu/drm/i915/i915_gem.c between commit 7dc19d5affd7 ("drivers:
convert shrinkers to new count/scan API") from the  tree and commit
e656a6cba0fe ("drm/i915: inline vma_create into lookup_or_create_vma")
from the drm-intel tree.

I fixed it up (see below) and can carry the fix as necessary (no action
is required).

-- 
Cheers,
Stephen Rothwell                    s...@canb.auug.org.au

diff --cc drivers/gpu/drm/i915/i915_gem.c
index df9253d,d00d24f..0000000
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@@ -4886,61 -4912,3 +4940,37 @@@ unsigned long i915_gem_obj_size(struct 
  
        return 0;
  }
 +
 +static unsigned long
 +i915_gem_inactive_scan(struct shrinker *shrinker, struct shrink_control *sc)
 +{
 +      struct drm_i915_private *dev_priv =
 +              container_of(shrinker,
 +                           struct drm_i915_private,
 +                           mm.inactive_shrinker);
 +      struct drm_device *dev = dev_priv->dev;
 +      int nr_to_scan = sc->nr_to_scan;
 +      unsigned long freed;
 +      bool unlock = true;
 +
 +      if (!mutex_trylock(&dev->struct_mutex)) {
 +              if (!mutex_is_locked_by(&dev->struct_mutex, current))
 +                      return 0;
 +
 +              if (dev_priv->mm.shrinker_no_lock_stealing)
 +                      return 0;
 +
 +              unlock = false;
 +      }
 +
 +      freed = i915_gem_purge(dev_priv, nr_to_scan);
 +      if (freed < nr_to_scan)
 +              freed += __i915_gem_shrink(dev_priv, nr_to_scan,
 +                                                      false);
 +      if (freed < nr_to_scan)
 +              freed += i915_gem_shrink_all(dev_priv);
 +
 +      if (unlock)
 +              mutex_unlock(&dev->struct_mutex);
 +      return freed;
 +}
- 
- struct i915_vma *i915_gem_obj_to_vma(struct drm_i915_gem_object *obj,
-                                    struct i915_address_space *vm)
- {
-       struct i915_vma *vma;
-       list_for_each_entry(vma, &obj->vma_list, vma_link)
-               if (vma->vm == vm)
-                       return vma;
- 
-       return NULL;
- }
- 
- struct i915_vma *
- i915_gem_obj_lookup_or_create_vma(struct drm_i915_gem_object *obj,
-                                 struct i915_address_space *vm)
- {
-       struct i915_vma *vma;
- 
-       vma = i915_gem_obj_to_vma(obj, vm);
-       if (!vma)
-               vma = i915_gem_vma_create(obj, vm);
- 
-       return vma;
- }

Attachment: pgp2pyZAxZl16.pgp
Description: PGP signature

Reply via email to