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.

Link: https://patch.msgid.link/[email protected]
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
Signed-off-by: Steven Rostedt <[email protected]>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c   | 2 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c   | 4 ++--
 drivers/gpu/drm/scheduler/sched_entity.c | 5 +++--
 3 files changed, 6 insertions(+), 5 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 
b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
index 5558e7330cf4..8873e28f526f 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
@@ -1025,7 +1025,7 @@ static void trace_amdgpu_cs_ibs(struct amdgpu_cs_parser 
*p)
                struct amdgpu_job *job = p->jobs[i];
 
                for (j = 0; j < job->num_ibs; ++j)
-                       trace_amdgpu_cs(p, job, &job->ibs[j]);
+                       trace_call__amdgpu_cs(p, job, &job->ibs[j]);
        }
 }
 
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c 
b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
index 2bd07007def4..f10e443e1ebe 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
@@ -1425,7 +1425,7 @@ int amdgpu_vm_bo_update(struct amdgpu_device *adev, 
struct amdgpu_bo_va *bo_va,
 
        if (trace_amdgpu_vm_bo_mapping_enabled()) {
                list_for_each_entry(mapping, &bo_va->valids, list)
-                       trace_amdgpu_vm_bo_mapping(mapping);
+                       trace_call__amdgpu_vm_bo_mapping(mapping);
        }
 
 error_free:
@@ -2189,7 +2189,7 @@ void amdgpu_vm_bo_trace_cs(struct amdgpu_vm *vm, struct 
ww_acquire_ctx *ticket)
                                continue;
                }
 
-               trace_amdgpu_vm_bo_cs(mapping);
+               trace_call__amdgpu_vm_bo_cs(mapping);
        }
 }
 
diff --git a/drivers/gpu/drm/scheduler/sched_entity.c 
b/drivers/gpu/drm/scheduler/sched_entity.c
index 7be0387bac3c..ddf161a47742 100644
--- a/drivers/gpu/drm/scheduler/sched_entity.c
+++ b/drivers/gpu/drm/scheduler/sched_entity.c
@@ -500,7 +500,8 @@ static bool drm_sched_entity_add_dependency_cb(struct 
drm_sched_entity *entity,
 
        if (trace_drm_sched_job_unschedulable_enabled() &&
            !test_bit(DMA_FENCE_FLAG_SIGNALED_BIT, &entity->dependency->flags))
-               trace_drm_sched_job_unschedulable(sched_job, 
entity->dependency);
+               trace_call__drm_sched_job_unschedulable(sched_job,
+                                                       entity->dependency);
 
        if (!dma_fence_add_callback(entity->dependency, &entity->cb,
                                    drm_sched_entity_wakeup))
@@ -630,7 +631,7 @@ void drm_sched_entity_push_job(struct drm_sched_job 
*sched_job)
                unsigned long index;
 
                xa_for_each(&sched_job->dependencies, index, entry)
-                       trace_drm_sched_job_add_dep(sched_job, entry);
+                       trace_call__drm_sched_job_add_dep(sched_job, entry);
        }
        atomic_inc(entity->rq->sched->score);
        WRITE_ONCE(entity->last_user, current->group_leader);
-- 
2.53.0

Reply via email to