|
@@ -714,10 +714,7 @@ flush_write_domain(struct drm_i915_gem_object *obj, unsigned int flush_domains)
|
|
|
intel_fb_obj_flush(obj,
|
|
|
fb_write_origin(obj, I915_GEM_DOMAIN_GTT));
|
|
|
|
|
|
- list_for_each_entry(vma, &obj->vma_list, obj_link) {
|
|
|
- if (!i915_vma_is_ggtt(vma))
|
|
|
- break;
|
|
|
-
|
|
|
+ for_each_ggtt_vma(vma, obj) {
|
|
|
if (vma->iomap)
|
|
|
continue;
|
|
|
|
|
@@ -1569,10 +1566,7 @@ static void i915_gem_object_bump_inactive_ggtt(struct drm_i915_gem_object *obj)
|
|
|
|
|
|
GEM_BUG_ON(!i915_gem_object_has_pinned_pages(obj));
|
|
|
|
|
|
- list_for_each_entry(vma, &obj->vma_list, obj_link) {
|
|
|
- if (!i915_vma_is_ggtt(vma))
|
|
|
- break;
|
|
|
-
|
|
|
+ for_each_ggtt_vma(vma, obj) {
|
|
|
if (i915_vma_is_active(vma))
|
|
|
continue;
|
|
|
|
|
@@ -2051,12 +2045,8 @@ static void __i915_gem_object_release_mmap(struct drm_i915_gem_object *obj)
|
|
|
drm_vma_node_unmap(&obj->base.vma_node,
|
|
|
obj->base.dev->anon_inode->i_mapping);
|
|
|
|
|
|
- list_for_each_entry(vma, &obj->vma_list, obj_link) {
|
|
|
- if (!i915_vma_is_ggtt(vma))
|
|
|
- break;
|
|
|
-
|
|
|
+ for_each_ggtt_vma(vma, obj)
|
|
|
i915_vma_unset_userfault(vma);
|
|
|
- }
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -3822,7 +3812,7 @@ restart:
|
|
|
* dropped the fence as all snoopable access is
|
|
|
* supposed to be linear.
|
|
|
*/
|
|
|
- list_for_each_entry(vma, &obj->vma_list, obj_link) {
|
|
|
+ for_each_ggtt_vma(vma, obj) {
|
|
|
ret = i915_vma_put_fence(vma);
|
|
|
if (ret)
|
|
|
return ret;
|