[Intel-gfx] [PATCH 11/19] drm/i915: Remove resv from i915_vma

Niranjana Vishwanathapura niranjana.vishwanathapura at intel.com
Wed Sep 8 01:10:00 UTC 2021


On Mon, Aug 30, 2021 at 02:09:58PM +0200, Maarten Lankhorst wrote:
>It's just an alias to vma->obj->base.resv, no need to duplicate it.

Looks good to me.
Reviewed-by: Niranjana Vishwanathapura <niranjana.vishwanathapura at intel.com>

>
>Signed-off-by: Maarten Lankhorst <maarten.lankhorst at linux.intel.com>
>---
> drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c | 4 ++--
> drivers/gpu/drm/i915/i915_vma.c                | 9 ++++-----
> drivers/gpu/drm/i915/i915_vma.h                | 6 +++---
> drivers/gpu/drm/i915/i915_vma_types.h          | 1 -
> 4 files changed, 9 insertions(+), 11 deletions(-)
>
>diff --git a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
>index 4f10a81befd1..6832b255294e 100644
>--- a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
>+++ b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
>@@ -975,7 +975,7 @@ static int eb_validate_vmas(struct i915_execbuffer *eb)
> 		}
>
> 		if (!(ev->flags & EXEC_OBJECT_WRITE)) {
>-			err = dma_resv_reserve_shared(vma->resv, 1);
>+			err = dma_resv_reserve_shared(vma->obj->base.resv, 1);
> 			if (err)
> 				return err;
> 		}
>@@ -2121,7 +2121,7 @@ static int eb_parse(struct i915_execbuffer *eb)
> 		goto err_trampoline;
> 	}
>
>-	err = dma_resv_reserve_shared(shadow->resv, 1);
>+	err = dma_resv_reserve_shared(shadow->obj->base.resv, 1);
> 	if (err)
> 		goto err_trampoline;
>
>diff --git a/drivers/gpu/drm/i915/i915_vma.c b/drivers/gpu/drm/i915/i915_vma.c
>index ad5d52b33eb6..36db641e863e 100644
>--- a/drivers/gpu/drm/i915/i915_vma.c
>+++ b/drivers/gpu/drm/i915/i915_vma.c
>@@ -116,7 +116,6 @@ vma_create(struct drm_i915_gem_object *obj,
> 	vma->vm = i915_vm_get(vm);
> 	vma->ops = &vm->vma_ops;
> 	vma->obj = obj;
>-	vma->resv = obj->base.resv;
> 	vma->size = obj->base.size;
> 	vma->display_alignment = I915_GTT_MIN_ALIGNMENT;
>
>@@ -1032,7 +1031,7 @@ int i915_ggtt_pin(struct i915_vma *vma, struct i915_gem_ww_ctx *ww,
> 	GEM_BUG_ON(!i915_vma_is_ggtt(vma));
>
> #ifdef CONFIG_LOCKDEP
>-	WARN_ON(!ww && dma_resv_held(vma->resv));
>+	WARN_ON(!ww && dma_resv_held(vma->obj->base.resv));
> #endif
>
> 	do {
>@@ -1249,17 +1248,17 @@ int i915_vma_move_to_active(struct i915_vma *vma,
> 			intel_frontbuffer_put(front);
> 		}
>
>-		dma_resv_add_excl_fence(vma->resv, &rq->fence);
>+		dma_resv_add_excl_fence(vma->obj->base.resv, &rq->fence);
> 		obj->write_domain = I915_GEM_DOMAIN_RENDER;
> 		obj->read_domains = 0;
> 	} else {
> 		if (!(flags & __EXEC_OBJECT_NO_RESERVE)) {
>-			err = dma_resv_reserve_shared(vma->resv, 1);
>+			err = dma_resv_reserve_shared(vma->obj->base.resv, 1);
> 			if (unlikely(err))
> 				return err;
> 		}
>
>-		dma_resv_add_shared_fence(vma->resv, &rq->fence);
>+		dma_resv_add_shared_fence(vma->obj->base.resv, &rq->fence);
> 		obj->write_domain = 0;
> 	}
>
>diff --git a/drivers/gpu/drm/i915/i915_vma.h b/drivers/gpu/drm/i915/i915_vma.h
>index 1ba82bf863a5..0b11c188f749 100644
>--- a/drivers/gpu/drm/i915/i915_vma.h
>+++ b/drivers/gpu/drm/i915/i915_vma.h
>@@ -225,16 +225,16 @@ static inline void __i915_vma_put(struct i915_vma *vma)
> 	kref_put(&vma->ref, i915_vma_release);
> }
>
>-#define assert_vma_held(vma) dma_resv_assert_held((vma)->resv)
>+#define assert_vma_held(vma) dma_resv_assert_held((vma)->obj->base.resv)
>
> static inline void i915_vma_lock(struct i915_vma *vma)
> {
>-	dma_resv_lock(vma->resv, NULL);
>+	dma_resv_lock(vma->obj->base.resv, NULL);
> }
>
> static inline void i915_vma_unlock(struct i915_vma *vma)
> {
>-	dma_resv_unlock(vma->resv);
>+	dma_resv_unlock(vma->obj->base.resv);
> }
>
> int __must_check
>diff --git a/drivers/gpu/drm/i915/i915_vma_types.h b/drivers/gpu/drm/i915/i915_vma_types.h
>index 995b502d7e5d..47573ed2d11f 100644
>--- a/drivers/gpu/drm/i915/i915_vma_types.h
>+++ b/drivers/gpu/drm/i915/i915_vma_types.h
>@@ -177,7 +177,6 @@ struct i915_vma {
> 	const struct i915_vma_ops *ops;
>
> 	struct drm_i915_gem_object *obj;
>-	struct dma_resv *resv; /** Alias of obj->resv */
>
> 	struct sg_table *pages;
> 	void __iomem *iomap;
>-- 
>2.32.0
>


More information about the Intel-gfx mailing list