aboutsummaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorGravatar Dmitry Baryshkov <dmitry.baryshkov@linaro.org> 2023-12-03 03:05:28 +0300
committerGravatar Dmitry Baryshkov <dmitry.baryshkov@linaro.org> 2023-12-05 13:15:14 +0200
commitc8fa1cc07759dde17c97796f41696a0da35c6ea7 (patch)
tree6287c5a4d37410358fb1b46cfe24c504304be988 /drivers
parentdrm/gpuvm: Let drm_gpuvm_bo_put() report when the vm_bo object is destroyed (diff)
downloadlinux-c8fa1cc07759dde17c97796f41696a0da35c6ea7.tar.gz
linux-c8fa1cc07759dde17c97796f41696a0da35c6ea7.tar.bz2
linux-c8fa1cc07759dde17c97796f41696a0da35c6ea7.zip
drm/atomic: add private obj state to state dump
The drm_atomic_print_new_state() already prints private object state via drm_atomic_private_obj_print_state(). Add private object state dumping to __drm_state_dump(), so that it is also included into drm_state_dump() output and into debugfs/dri/N/state file. Reviewed-by: Rob Clark <robdclark@gmail.com> Acked-by: Maxime Ripard <mripard@kernel.org> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Link: https://patchwork.freedesktop.org/patch/msgid/20231203000532.1290480-2-dmitry.baryshkov@linaro.org
Diffstat (limited to 'drivers')
-rw-r--r--drivers/gpu/drm/drm_atomic.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/gpu/drm/drm_atomic.c b/drivers/gpu/drm/drm_atomic.c
index f1a503aafe5a..c31fc0b48c31 100644
--- a/drivers/gpu/drm/drm_atomic.c
+++ b/drivers/gpu/drm/drm_atomic.c
@@ -1773,6 +1773,7 @@ static void __drm_state_dump(struct drm_device *dev, struct drm_printer *p,
struct drm_crtc *crtc;
struct drm_connector *connector;
struct drm_connector_list_iter conn_iter;
+ struct drm_private_obj *obj;
if (!drm_drv_uses_atomic_modeset(dev))
return;
@@ -1801,6 +1802,14 @@ static void __drm_state_dump(struct drm_device *dev, struct drm_printer *p,
if (take_locks)
drm_modeset_unlock(&dev->mode_config.connection_mutex);
drm_connector_list_iter_end(&conn_iter);
+
+ list_for_each_entry(obj, &config->privobj_list, head) {
+ if (take_locks)
+ drm_modeset_lock(&obj->lock, NULL);
+ drm_atomic_private_obj_print_state(p, obj->state);
+ if (take_locks)
+ drm_modeset_unlock(&obj->lock);
+ }
}
/**