summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/msm/msm_gem.c
diff options
context:
space:
mode:
authorRob Clark <robdclark@chromium.org>2020-10-23 09:51:20 -0700
committerRob Clark <robdclark@chromium.org>2020-11-04 16:00:56 -0800
commit25c49c838bdeb7785570dd84d5b078ad9e2ba085 (patch)
treeb1ed3b78b48a69c93ec0c5982b9c73403545532e /drivers/gpu/drm/msm/msm_gem.c
parentc5c1643cef7a11c1f3a5544528087618ba9a5aab (diff)
downloadlinux-25c49c838bdeb7785570dd84d5b078ad9e2ba085.tar.bz2
drm/msm: Drop struct_mutex in free_object() path
Now that active_list/inactive_list is protected by mm_lock, we no longer need dev->struct_mutex in the free_object() path. Signed-off-by: Rob Clark <robdclark@chromium.org> Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com> Signed-off-by: Rob Clark <robdclark@chromium.org>
Diffstat (limited to 'drivers/gpu/drm/msm/msm_gem.c')
-rw-r--r--drivers/gpu/drm/msm/msm_gem.c8
1 files changed, 0 insertions, 8 deletions
diff --git a/drivers/gpu/drm/msm/msm_gem.c b/drivers/gpu/drm/msm/msm_gem.c
index dd3c21bb8740..c2e2e033b13e 100644
--- a/drivers/gpu/drm/msm/msm_gem.c
+++ b/drivers/gpu/drm/msm/msm_gem.c
@@ -948,8 +948,6 @@ static void free_object(struct msm_gem_object *msm_obj)
struct drm_device *dev = obj->dev;
struct msm_drm_private *priv = dev->dev_private;
- WARN_ON(!mutex_is_locked(&dev->struct_mutex));
-
/* object should not be on active list: */
WARN_ON(is_active(msm_obj));
@@ -991,20 +989,14 @@ void msm_gem_free_work(struct work_struct *work)
{
struct msm_drm_private *priv =
container_of(work, struct msm_drm_private, free_work);
- struct drm_device *dev = priv->dev;
struct llist_node *freed;
struct msm_gem_object *msm_obj, *next;
while ((freed = llist_del_all(&priv->free_list))) {
-
- mutex_lock(&dev->struct_mutex);
-
llist_for_each_entry_safe(msm_obj, next,
freed, freed)
free_object(msm_obj);
- mutex_unlock(&dev->struct_mutex);
-
if (need_resched())
break;
}