Hi Iago,
On 12/05/26 05:48, Iago Toral wrote:
El vie, 08-05-2026 a las 10:41 -0300, Maíra Canal escribió:
(...)
diff --git a/drivers/gpu/drm/v3d/v3d_perfmon.c
b/drivers/gpu/drm/v3d/v3d_perfmon.c
index 4f1c59e282b5..006eff007aa3 100644
--- a/drivers/gpu/drm/v3d/v3d_perfmon.c
+++ b/drivers/gpu/drm/v3d/v3d_perfmon.c
@@ -273,6 +273,9 @@ void v3d_perfmon_start(struct v3d_dev *v3d,
struct v3d_perfmon *perfmon)
if (perfmon == v3d->perfmon_state.active)
return;
+ if (WARN_ON_ONCE(v3d->perfmon_state.active))
+ return;
+
Doesn't this change belong in the previous patch?
Actually, it doesn't. We couldn't assure in the last patch that the
active perfmon would be NULL by the time we start the perfmon, as there
was no cross-queue serialization. So, a queue could try to start a
perfmon while another queue's perfmon was active.
Best regards,
- Maíra
Iago
if (!pm_runtime_get_if_active(v3d->drm.dev))
return;