From: Vineeth Pillai <[email protected]>

Replace trace_foo() with the new trace_call__foo() at sites already
guarded by trace_foo_enabled(), avoiding a redundant
static_branch_unlikely() re-evaluation inside the tracepoint.
trace_call__foo() calls the tracepoint callbacks directly without
utilizing the static branch again.

Original v2 series:
https://lore.kernel.org/linux-trace-kernel/[email protected]/

Parts of the original v2 series have already been merged in mainline.
This patch is being reposted as a follow-up cleanup for the remaining
unmerged pieces.

Suggested-by: Steven Rostedt <[email protected]>
Suggested-by: Peter Zijlstra <[email protected]>
Signed-off-by: Vineeth Pillai (Google) <[email protected]>
Assisted-by: Claude:claude-sonnet-4-6
---
 drivers/gpu/drm/panthor/panthor_fw.c  | 4 ++--
 drivers/gpu/drm/panthor/panthor_gpu.c | 8 ++++----
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/gpu/drm/panthor/panthor_fw.c 
b/drivers/gpu/drm/panthor/panthor_fw.c
index 8886002e1d31..601d464b312c 100644
--- a/drivers/gpu/drm/panthor/panthor_fw.c
+++ b/drivers/gpu/drm/panthor/panthor_fw.c
@@ -1080,10 +1080,10 @@ static void panthor_job_irq_handler(struct 
panthor_device *ptdev, u32 status)
 
        panthor_sched_report_fw_events(ptdev, status);
 
-       if (tracepoint_enabled(gpu_job_irq) && start) {
+       if (start) {
                if (check_sub_overflow(ktime_get_ns(), start, &duration))
                        duration = U32_MAX;
-               trace_gpu_job_irq(ptdev->base.dev, status, duration);
+               trace_call__gpu_job_irq(ptdev->base.dev, status, duration);
        }
 }
 PANTHOR_IRQ_HANDLER(job, JOB, panthor_job_irq_handler);
diff --git a/drivers/gpu/drm/panthor/panthor_gpu.c 
b/drivers/gpu/drm/panthor/panthor_gpu.c
index 2ab444ee8c71..b19754d7093c 100644
--- a/drivers/gpu/drm/panthor/panthor_gpu.c
+++ b/drivers/gpu/drm/panthor/panthor_gpu.c
@@ -87,10 +87,10 @@ static void panthor_gpu_irq_handler(struct panthor_device 
*ptdev, u32 status)
        gpu_write(ptdev, GPU_INT_CLEAR, status);
 
        if (tracepoint_enabled(gpu_power_status) && (status & 
GPU_POWER_INTERRUPTS_MASK))
-               trace_gpu_power_status(ptdev->base.dev,
-                                      gpu_read64(ptdev, SHADER_READY),
-                                      gpu_read64(ptdev, TILER_READY),
-                                      gpu_read64(ptdev, L2_READY));
+               trace_call__gpu_power_status(ptdev->base.dev,
+                                            gpu_read64(ptdev, SHADER_READY),
+                                            gpu_read64(ptdev, TILER_READY),
+                                            gpu_read64(ptdev, L2_READY));
 
        if (status & GPU_IRQ_FAULT) {
                u32 fault_status = gpu_read(ptdev, GPU_FAULT_STATUS);
-- 
2.54.0


Reply via email to