* [PATCH] drm/panfrost: Only display fdinfo's engine and cycle tags when profiling is on
@ 2024-03-16 23:13 Adrián Larumbe
2024-03-18 12:21 ` Steven Price
2024-03-25 16:06 ` Steven Price
0 siblings, 2 replies; 3+ messages in thread
From: Adrián Larumbe @ 2024-03-16 23:13 UTC (permalink / raw
To: Boris Brezillon, Rob Herring, Steven Price, Maarten Lankhorst,
Maxime Ripard, Thomas Zimmermann, David Airlie, Daniel Vetter
Cc: kernel, Adrián Larumbe, dri-devel, linux-kernel
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>
---
drivers/gpu/drm/panfrost/panfrost_drv.c | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/drivers/gpu/drm/panfrost/panfrost_drv.c b/drivers/gpu/drm/panfrost/panfrost_drv.c
index eec250114114..ef9f6c0716d5 100644
--- a/drivers/gpu/drm/panfrost/panfrost_drv.c
+++ b/drivers/gpu/drm/panfrost/panfrost_drv.c
@@ -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",
base-commit: 97252d0a4bfbb07079503d059f7522d305fe0f7a
--
2.43.0
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] drm/panfrost: Only display fdinfo's engine and cycle tags when profiling is on
2024-03-16 23:13 [PATCH] drm/panfrost: Only display fdinfo's engine and cycle tags when profiling is on Adrián Larumbe
@ 2024-03-18 12:21 ` Steven Price
2024-03-25 16:06 ` Steven Price
1 sibling, 0 replies; 3+ messages in thread
From: Steven Price @ 2024-03-18 12:21 UTC (permalink / raw
To: Adrián Larumbe, Boris Brezillon, Rob Herring,
Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Daniel Vetter
Cc: kernel, dri-devel, linux-kernel
On 16/03/2024 23:13, Adrián Larumbe wrote:
> 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>
> ---
> drivers/gpu/drm/panfrost/panfrost_drv.c | 10 ++++++----
> 1 file changed, 6 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/panfrost/panfrost_drv.c b/drivers/gpu/drm/panfrost/panfrost_drv.c
> index eec250114114..ef9f6c0716d5 100644
> --- a/drivers/gpu/drm/panfrost/panfrost_drv.c
> +++ b/drivers/gpu/drm/panfrost/panfrost_drv.c
> @@ -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",
>
> base-commit: 97252d0a4bfbb07079503d059f7522d305fe0f7a
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] drm/panfrost: Only display fdinfo's engine and cycle tags when profiling is on
2024-03-16 23:13 [PATCH] drm/panfrost: Only display fdinfo's engine and cycle tags when profiling is on Adrián Larumbe
2024-03-18 12:21 ` Steven Price
@ 2024-03-25 16:06 ` Steven Price
1 sibling, 0 replies; 3+ messages in thread
From: Steven Price @ 2024-03-25 16:06 UTC (permalink / raw
To: Adrián Larumbe, Boris Brezillon, Rob Herring,
Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Daniel Vetter
Cc: kernel, dri-devel, linux-kernel
On 16/03/2024 23:13, Adrián Larumbe wrote:
> 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>
Pushed to drm-misc-next
Thanks,
Steve
> ---
> drivers/gpu/drm/panfrost/panfrost_drv.c | 10 ++++++----
> 1 file changed, 6 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/panfrost/panfrost_drv.c b/drivers/gpu/drm/panfrost/panfrost_drv.c
> index eec250114114..ef9f6c0716d5 100644
> --- a/drivers/gpu/drm/panfrost/panfrost_drv.c
> +++ b/drivers/gpu/drm/panfrost/panfrost_drv.c
> @@ -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",
>
> base-commit: 97252d0a4bfbb07079503d059f7522d305fe0f7a
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2024-03-25 16:06 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-03-16 23:13 [PATCH] drm/panfrost: Only display fdinfo's engine and cycle tags when profiling is on Adrián Larumbe
2024-03-18 12:21 ` Steven Price
2024-03-25 16:06 ` Steven Price
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.