[PATCH v7 02/24] drm/gpuvm: Kill drm_gpuva_init()

Rob Clark rob.clark at oss.qualcomm.com
Thu Aug 14 14:08:29 UTC 2025


On Thu, Aug 14, 2025 at 3:32 AM Himal Prasad Ghimiray
<himal.prasad.ghimiray at intel.com> wrote:
>
> From: Boris Brezillon <boris.brezillon at collabora.com>
>
> drm_gpuva_init() only has one internal user, and given we are about to
> add new optional fields, it only add maintenance burden for no real
> benefit, so let's kill the thing now.
>
> v2
> - Remove usage from msm
>
> Cc: Danilo Krummrich <dakr at kernel.org>
> Cc: Rob Clark <robin.clark at oss.qualcomm.com>
> Signed-off-by: Boris Brezillon <boris.brezillon at collabora.com>
> Signed-off-by: Caterina Shablia <caterina.shablia at collabora.com>
> Acked-by: Danilo Krummrich <dakr at kernel.org>
> Reviewed-by: Matthew Brost <matthew.brost at intel.com>
> Signed-off-by: Himal Prasad Ghimiray <himal.prasad.ghimiray at intel.com>

Reviewed-by: Rob Clark <robin.clark at oss.qualcomm.com>

> ---
>  drivers/gpu/drm/msm/msm_gem_vma.c |  8 +++++++-
>  include/drm/drm_gpuvm.h           | 15 ++++-----------
>  2 files changed, 11 insertions(+), 12 deletions(-)
>
> diff --git a/drivers/gpu/drm/msm/msm_gem_vma.c b/drivers/gpu/drm/msm/msm_gem_vma.c
> index e106428369ef..3e97d3d61430 100644
> --- a/drivers/gpu/drm/msm/msm_gem_vma.c
> +++ b/drivers/gpu/drm/msm/msm_gem_vma.c
> @@ -371,6 +371,12 @@ struct drm_gpuva *
>  msm_gem_vma_new(struct drm_gpuvm *gpuvm, struct drm_gem_object *obj,
>                 u64 offset, u64 range_start, u64 range_end)
>  {
> +       struct drm_gpuva_op_map op_map = {
> +               .va.addr = range_start,
> +               .va.range = range_end - range_start,
> +               .gem.obj = obj,
> +               .gem.offset = offset,
> +       };
>         struct msm_gem_vm *vm = to_msm_vm(gpuvm);
>         struct drm_gpuvm_bo *vm_bo;
>         struct msm_gem_vma *vma;
> @@ -399,7 +405,7 @@ msm_gem_vma_new(struct drm_gpuvm *gpuvm, struct drm_gem_object *obj,
>         if (obj)
>                 GEM_WARN_ON((range_end - range_start) > obj->size);
>
> -       drm_gpuva_init(&vma->base, range_start, range_end - range_start, obj, offset);
> +       drm_gpuva_init_from_op(&vma->base, &op_map);
>         vma->mapped = false;
>
>         ret = drm_gpuva_insert(&vm->base, &vma->base);
> diff --git a/include/drm/drm_gpuvm.h b/include/drm/drm_gpuvm.h
> index a9fa44148e0c..05347ac6cc73 100644
> --- a/include/drm/drm_gpuvm.h
> +++ b/include/drm/drm_gpuvm.h
> @@ -160,15 +160,6 @@ struct drm_gpuva *drm_gpuva_find_first(struct drm_gpuvm *gpuvm,
>  struct drm_gpuva *drm_gpuva_find_prev(struct drm_gpuvm *gpuvm, u64 start);
>  struct drm_gpuva *drm_gpuva_find_next(struct drm_gpuvm *gpuvm, u64 end);
>
> -static inline void drm_gpuva_init(struct drm_gpuva *va, u64 addr, u64 range,
> -                                 struct drm_gem_object *obj, u64 offset)
> -{
> -       va->va.addr = addr;
> -       va->va.range = range;
> -       va->gem.obj = obj;
> -       va->gem.offset = offset;
> -}
> -
>  /**
>   * drm_gpuva_invalidate() - sets whether the backing GEM of this &drm_gpuva is
>   * invalidated
> @@ -1089,8 +1080,10 @@ void drm_gpuva_ops_free(struct drm_gpuvm *gpuvm,
>  static inline void drm_gpuva_init_from_op(struct drm_gpuva *va,
>                                           struct drm_gpuva_op_map *op)
>  {
> -       drm_gpuva_init(va, op->va.addr, op->va.range,
> -                      op->gem.obj, op->gem.offset);
> +       va->va.addr = op->va.addr;
> +       va->va.range = op->va.range;
> +       va->gem.obj = op->gem.obj;
> +       va->gem.offset = op->gem.offset;
>  }
>
>  /**
> --
> 2.34.1
>


More information about the Intel-xe mailing list