lkml.org 
[lkml]   [2020]   [Oct]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [Freedreno] [PATCH 08/14] drm/msm: Remove obj->gpu
    On Sun, Oct 04, 2020 at 12:21:40PM -0700, Rob Clark wrote:
    > From: Rob Clark <robdclark@chromium.org>
    >
    > It cannot be atomically updated with obj->active_count, and the only
    > purpose is a useless WARN_ON() (which becomes a buggy WARN_ON() once
    > retire_submits() is not serialized with incoming submits via
    > struct_mutex)

    Somebody will prove me wrong but the longer we go without 2D the less likely it
    is that we'll ever see it.

    Reviewed-by: Jordan Crouse <jcrouse@codeaurora.org>

    > Signed-off-by: Rob Clark <robdclark@chromium.org>
    > ---
    > drivers/gpu/drm/msm/msm_gem.c | 2 --
    > drivers/gpu/drm/msm/msm_gem.h | 1 -
    > drivers/gpu/drm/msm/msm_gpu.c | 5 -----
    > 3 files changed, 8 deletions(-)
    >
    > diff --git a/drivers/gpu/drm/msm/msm_gem.c b/drivers/gpu/drm/msm/msm_gem.c
    > index b04ed8b52f9d..c52a3969e60b 100644
    > --- a/drivers/gpu/drm/msm/msm_gem.c
    > +++ b/drivers/gpu/drm/msm/msm_gem.c
    > @@ -753,7 +753,6 @@ void msm_gem_active_get(struct drm_gem_object *obj, struct msm_gpu *gpu)
    >
    > if (!atomic_fetch_inc(&msm_obj->active_count)) {
    > mutex_lock(&priv->mm_lock);
    > - msm_obj->gpu = gpu;
    > list_del_init(&msm_obj->mm_list);
    > list_add_tail(&msm_obj->mm_list, &gpu->active_list);
    > mutex_unlock(&priv->mm_lock);
    > @@ -769,7 +768,6 @@ void msm_gem_active_put(struct drm_gem_object *obj)
    >
    > if (!atomic_dec_return(&msm_obj->active_count)) {
    > mutex_lock(&priv->mm_lock);
    > - msm_obj->gpu = NULL;
    > list_del_init(&msm_obj->mm_list);
    > list_add_tail(&msm_obj->mm_list, &priv->inactive_list);
    > mutex_unlock(&priv->mm_lock);
    > diff --git a/drivers/gpu/drm/msm/msm_gem.h b/drivers/gpu/drm/msm/msm_gem.h
    > index e05b1530aca6..61147bd96b06 100644
    > --- a/drivers/gpu/drm/msm/msm_gem.h
    > +++ b/drivers/gpu/drm/msm/msm_gem.h
    > @@ -64,7 +64,6 @@ struct msm_gem_object {
    > *
    > */
    > struct list_head mm_list;
    > - struct msm_gpu *gpu; /* non-null if active */
    >
    > /* Transiently in the process of submit ioctl, objects associated
    > * with the submit are on submit->bo_list.. this only lasts for
    > diff --git a/drivers/gpu/drm/msm/msm_gpu.c b/drivers/gpu/drm/msm/msm_gpu.c
    > index fd3fc6f36ab1..c9ff19a75169 100644
    > --- a/drivers/gpu/drm/msm/msm_gpu.c
    > +++ b/drivers/gpu/drm/msm/msm_gpu.c
    > @@ -800,11 +800,6 @@ void msm_gpu_submit(struct msm_gpu *gpu, struct msm_gem_submit *submit)
    > struct drm_gem_object *drm_obj = &msm_obj->base;
    > uint64_t iova;
    >
    > - /* can't happen yet.. but when we add 2d support we'll have
    > - * to deal w/ cross-ring synchronization:
    > - */
    > - WARN_ON(is_active(msm_obj) && (msm_obj->gpu != gpu));
    > -
    > /* submit takes a reference to the bo and iova until retired: */
    > drm_gem_object_get(&msm_obj->base);
    > msm_gem_get_and_pin_iova(&msm_obj->base, submit->aspace, &iova);
    > --
    > 2.26.2
    >
    > _______________________________________________
    > Freedreno mailing list
    > Freedreno@lists.freedesktop.org
    > https://lists.freedesktop.org/mailman/listinfo/freedreno

    --
    The Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
    a Linux Foundation Collaborative Project

    \
     
     \ /
      Last update: 2020-10-05 16:29    [W:9.494 / U:0.016 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site