[Intel-gfx] [PATCH 6/9] drm/i915: Rename drm_gem_object_unreference_unlocked in preparation for lockless free
Joonas Lahtinen
joonas.lahtinen at linux.intel.com
Wed Jul 20 12:04:56 UTC 2016
On ke, 2016-07-20 at 09:59 +0100, Chris Wilson wrote:
> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
No hidden treasures in this one,
Reviewed-by: Joonas Lahtinen <joonas.lahtinen at linux.intel.com>
Regards, Joonas
> ---
> drivers/gpu/drm/i915/i915_drv.h | 10 ++++++++++
> drivers/gpu/drm/i915/i915_gem.c | 10 +++++-----
> drivers/gpu/drm/i915/i915_gem_tiling.c | 2 +-
> drivers/gpu/drm/i915/i915_gem_userptr.c | 2 +-
> drivers/gpu/drm/i915/intel_display.c | 6 +++---
> drivers/gpu/drm/i915/intel_overlay.c | 2 +-
> drivers/gpu/drm/i915/intel_pm.c | 2 +-
> 7 files changed, 22 insertions(+), 12 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
> index ffc97c5f9d2e..3ca1acec1522 100644
> --- a/drivers/gpu/drm/i915/i915_drv.h
> +++ b/drivers/gpu/drm/i915/i915_drv.h
> @@ -2327,6 +2327,16 @@ i915_gem_object_put(struct drm_i915_gem_object *obj)
> __deprecated
> extern void drm_gem_object_unreference(struct drm_gem_object *);
>
> +__attribute__((nonnull))
> +static inline void
> +i915_gem_object_put_unlocked(struct drm_i915_gem_object *obj)
> +{
> + drm_gem_object_unreference_unlocked(&obj->base);
> +}
> +
> +__deprecated
> +extern void drm_gem_object_unreference_unlocked(struct drm_gem_object *);
> +
> static inline bool
> i915_gem_object_has_struct_page(const struct drm_i915_gem_object *obj)
> {
> diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
> index f23670fbc8a9..536acd527359 100644
> --- a/drivers/gpu/drm/i915/i915_gem.c
> +++ b/drivers/gpu/drm/i915/i915_gem.c
> @@ -410,7 +410,7 @@ i915_gem_create(struct drm_file *file,
>
> ret = drm_gem_handle_create(file, &obj->base, &handle);
> /* drop reference from allocate - handle holds it now */
> - drm_gem_object_unreference_unlocked(&obj->base);
> + i915_gem_object_put_unlocked(obj);
> if (ret)
> return ret;
>
> @@ -1604,7 +1604,7 @@ i915_gem_mmap_ioctl(struct drm_device *dev, void *data,
> * pages from.
> */
> if (!obj->base.filp) {
> - drm_gem_object_unreference_unlocked(&obj->base);
> + i915_gem_object_put_unlocked(obj);
> return -EINVAL;
> }
>
> @@ -1616,7 +1616,7 @@ i915_gem_mmap_ioctl(struct drm_device *dev, void *data,
> struct vm_area_struct *vma;
>
> if (down_write_killable(&mm->mmap_sem)) {
> - drm_gem_object_unreference_unlocked(&obj->base);
> + i915_gem_object_put_unlocked(obj);
> return -EINTR;
> }
> vma = find_vma(mm, addr);
> @@ -1630,7 +1630,7 @@ i915_gem_mmap_ioctl(struct drm_device *dev, void *data,
> /* This may race, but that's ok, it only gets set */
> WRITE_ONCE(obj->has_wc_mmap, true);
> }
> - drm_gem_object_unreference_unlocked(&obj->base);
> + i915_gem_object_put_unlocked(obj);
> if (IS_ERR((void *)addr))
> return addr;
>
> @@ -3615,7 +3615,7 @@ int i915_gem_get_caching_ioctl(struct drm_device *dev, void *data,
> break;
> }
>
> - drm_gem_object_unreference_unlocked(&obj->base);
> + i915_gem_object_put_unlocked(obj);
> return 0;
> }
>
> diff --git a/drivers/gpu/drm/i915/i915_gem_tiling.c b/drivers/gpu/drm/i915/i915_gem_tiling.c
> index 2d9d190bd6ef..e83fc2d0433c 100644
> --- a/drivers/gpu/drm/i915/i915_gem_tiling.c
> +++ b/drivers/gpu/drm/i915/i915_gem_tiling.c
> @@ -172,7 +172,7 @@ i915_gem_set_tiling(struct drm_device *dev, void *data,
>
> if (!i915_tiling_ok(dev,
> args->stride, obj->base.size, args->tiling_mode)) {
> - drm_gem_object_unreference_unlocked(&obj->base);
> + i915_gem_object_put_unlocked(obj);
> return -EINVAL;
> }
>
> diff --git a/drivers/gpu/drm/i915/i915_gem_userptr.c b/drivers/gpu/drm/i915/i915_gem_userptr.c
> index cd4af22b8c59..ca8b82ab93d6 100644
> --- a/drivers/gpu/drm/i915/i915_gem_userptr.c
> +++ b/drivers/gpu/drm/i915/i915_gem_userptr.c
> @@ -845,7 +845,7 @@ i915_gem_userptr_ioctl(struct drm_device *dev, void *data, struct drm_file *file
> ret = drm_gem_handle_create(file, &obj->base, &handle);
>
> /* drop reference from allocate - handle holds it now */
> - drm_gem_object_unreference_unlocked(&obj->base);
> + i915_gem_object_put_unlocked(obj);
> if (ret)
> return ret;
>
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index a18a79c5db1c..78beb7e9d384 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -10442,7 +10442,7 @@ intel_framebuffer_create_for_mode(struct drm_device *dev,
>
> fb = intel_framebuffer_create(dev, &mode_cmd, obj);
> if (IS_ERR(fb))
> - drm_gem_object_unreference_unlocked(&obj->base);
> + i915_gem_object_put_unlocked(obj);
>
> return fb;
> }
> @@ -11756,7 +11756,7 @@ cleanup:
> crtc->primary->fb = old_fb;
> update_state_fb(crtc->primary);
>
> - drm_gem_object_unreference_unlocked(&obj->base);
> + i915_gem_object_put_unlocked(obj);
> drm_framebuffer_unreference(work->old_fb);
>
> spin_lock_irq(&dev->event_lock);
> @@ -15094,7 +15094,7 @@ intel_user_framebuffer_create(struct drm_device *dev,
>
> fb = intel_framebuffer_create(dev, &mode_cmd, obj);
> if (IS_ERR(fb))
> - drm_gem_object_unreference_unlocked(&obj->base);
> + i915_gem_object_put_unlocked(obj);
>
> return fb;
> }
> diff --git a/drivers/gpu/drm/i915/intel_overlay.c b/drivers/gpu/drm/i915/intel_overlay.c
> index 30d2f5db7d87..8654a323722e 100644
> --- a/drivers/gpu/drm/i915/intel_overlay.c
> +++ b/drivers/gpu/drm/i915/intel_overlay.c
> @@ -1460,7 +1460,7 @@ void intel_cleanup_overlay(struct drm_i915_private *dev_priv)
> * hardware should be off already */
> WARN_ON(dev_priv->overlay->active);
>
> - drm_gem_object_unreference_unlocked(&dev_priv->overlay->reg_bo->base);
> + i915_gem_object_put_unlocked(dev_priv->overlay->reg_bo);
> kfree(dev_priv->overlay);
> }
>
> diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
> index 4e9846e70b48..64d628c915a3 100644
> --- a/drivers/gpu/drm/i915/intel_pm.c
> +++ b/drivers/gpu/drm/i915/intel_pm.c
> @@ -5709,7 +5709,7 @@ static void valleyview_cleanup_pctx(struct drm_i915_private *dev_priv)
> if (WARN_ON(!dev_priv->vlv_pctx))
> return;
>
> - drm_gem_object_unreference_unlocked(&dev_priv->vlv_pctx->base);
> + i915_gem_object_put_unlocked(dev_priv->vlv_pctx);
> dev_priv->vlv_pctx = NULL;
> }
>
--
Joonas Lahtinen
Open Source Technology Center
Intel Corporation
More information about the Intel-gfx
mailing list