drm/panfrost: Only display fdinfo's engine and cycle tags when profiling is on
authorAdrián Larumbe <adrian.larumbe@collabora.com>
Sat, 16 Mar 2024 23:13:04 +0000 (23:13 +0000)
committerSteven Price <steven.price@arm.com>
Mon, 25 Mar 2024 15:54:50 +0000 (15:54 +0000)
If job accounting is disabled, then both fdinfo's drm-engine and drm-cycle
key values will remain immutable. In that case, it makes more sense not to
display them at all to avoid confusing user space profiling tools.

Signed-off-by: Adrián Larumbe <adrian.larumbe@collabora.com>
Reviewed-by: Steven Price <steven.price@arm.com>
Signed-off-by: Steven Price <steven.price@arm.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240316231306.293817-1-adrian.larumbe@collabora.com
drivers/gpu/drm/panfrost/panfrost_drv.c

index eec25011411492cc2c3226f403c497847f521ea7..ef9f6c0716d5a40e8067b16d593d1e74e6a5dae4 100644 (file)
@@ -550,10 +550,12 @@ static void panfrost_gpu_show_fdinfo(struct panfrost_device *pfdev,
        BUILD_BUG_ON(ARRAY_SIZE(engine_names) != NUM_JOB_SLOTS);
 
        for (i = 0; i < NUM_JOB_SLOTS - 1; i++) {
-               drm_printf(p, "drm-engine-%s:\t%llu ns\n",
-                          engine_names[i], panfrost_priv->engine_usage.elapsed_ns[i]);
-               drm_printf(p, "drm-cycles-%s:\t%llu\n",
-                          engine_names[i], panfrost_priv->engine_usage.cycles[i]);
+               if (pfdev->profile_mode) {
+                       drm_printf(p, "drm-engine-%s:\t%llu ns\n",
+                                  engine_names[i], panfrost_priv->engine_usage.elapsed_ns[i]);
+                       drm_printf(p, "drm-cycles-%s:\t%llu\n",
+                                  engine_names[i], panfrost_priv->engine_usage.cycles[i]);
+               }
                drm_printf(p, "drm-maxfreq-%s:\t%lu Hz\n",
                           engine_names[i], pfdev->pfdevfreq.fast_rate);
                drm_printf(p, "drm-curfreq-%s:\t%lu Hz\n",