projects
/
linux-2.6-microblaze.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
drm/i915/gem: Use shrinkable status for unknown swizzle quirks
[linux-2.6-microblaze.git]
/
drivers
/
gpu
/
drm
/
i915
/
gem
/
i915_gem_tiling.c
diff --git
a/drivers/gpu/drm/i915/gem/i915_gem_tiling.c
b/drivers/gpu/drm/i915/gem/i915_gem_tiling.c
index
ffcaee7
..
d589d3d
100644
(file)
--- a/
drivers/gpu/drm/i915/gem/i915_gem_tiling.c
+++ b/
drivers/gpu/drm/i915/gem/i915_gem_tiling.c
@@
-270,14
+270,14
@@
i915_gem_object_set_tiling(struct drm_i915_gem_object *obj,
obj->mm.madv == I915_MADV_WILLNEED &&
i915->quirks & QUIRK_PIN_SWIZZLED_PAGES) {
if (tiling == I915_TILING_NONE) {
obj->mm.madv == I915_MADV_WILLNEED &&
i915->quirks & QUIRK_PIN_SWIZZLED_PAGES) {
if (tiling == I915_TILING_NONE) {
- GEM_BUG_ON(!
obj->mm.quirked
);
-
__i915_gem_object_unpin_pages
(obj);
-
obj->mm.quirked = false
;
+ GEM_BUG_ON(!
i915_gem_object_has_tiling_quirk(obj)
);
+
i915_gem_object_clear_tiling_quirk
(obj);
+
i915_gem_object_make_shrinkable(obj)
;
}
if (!i915_gem_object_is_tiled(obj)) {
}
if (!i915_gem_object_is_tiled(obj)) {
- GEM_BUG_ON(
obj->mm.quirked
);
-
__i915_gem_object_pin_pages
(obj);
-
obj->mm.quirked = true
;
+ GEM_BUG_ON(
i915_gem_object_has_tiling_quirk(obj)
);
+
i915_gem_object_make_unshrinkable
(obj);
+
i915_gem_object_set_tiling_quirk(obj)
;
}
}
mutex_unlock(&obj->mm.lock);
}
}
mutex_unlock(&obj->mm.lock);