Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

drm/msm/dpu: drop global_state_lock

Since the commit b962a12050a3 ("drm/atomic: integrate modeset lock with
private objects") the DRM framework no longer requires the external
lock for private objects. Drop the lock, letting the DRM to manage
private object locking.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Abhinav Kumar <quic_abhinavk@quicinc.com>
Patchwork: https://patchwork.freedesktop.org/patch/570174/
Link: https://lore.kernel.org/r/20231203000532.1290480-4-dmitry.baryshkov@linaro.org

-9
-8
drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c
··· 317 317 struct msm_drm_private *priv = s->dev->dev_private; 318 318 struct dpu_kms *dpu_kms = to_dpu_kms(priv->kms); 319 319 struct drm_private_state *priv_state; 320 - int ret; 321 - 322 - ret = drm_modeset_lock(&dpu_kms->global_state_lock, s->acquire_ctx); 323 - if (ret) 324 - return ERR_PTR(ret); 325 320 326 321 priv_state = drm_atomic_get_private_obj_state(s, 327 322 &dpu_kms->global_state); ··· 357 362 { 358 363 struct dpu_global_state *state; 359 364 360 - drm_modeset_lock_init(&dpu_kms->global_state_lock); 361 - 362 365 state = kzalloc(sizeof(*state), GFP_KERNEL); 363 366 if (!state) 364 367 return -ENOMEM; ··· 370 377 static void dpu_kms_global_obj_fini(struct dpu_kms *dpu_kms) 371 378 { 372 379 drm_atomic_private_obj_fini(&dpu_kms->global_state); 373 - drm_modeset_lock_fini(&dpu_kms->global_state_lock); 374 380 } 375 381 376 382 static int dpu_kms_parse_data_bus_icc_path(struct dpu_kms *dpu_kms)
-1
drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h
··· 85 85 * Global private object state, Do not access directly, use 86 86 * dpu_kms_global_get_state() 87 87 */ 88 - struct drm_modeset_lock global_state_lock; 89 88 struct drm_private_obj global_state; 90 89 91 90 struct dpu_rm rm;