Commit 5f1bcf51 authored by Christian König's avatar Christian König Committed by Alex Deucher

drm/amdgpu: trace vm hub during flush as well v2

Trace on which hub we are doing the flush.

v2: fix typo in commit message
Signed-off-by: default avatarChristian König <christian.koenig@amd.com>
Reviewed-by: default avatarAlex Deucher <alexander.deucher@amd.com>
Reviewed-by: default avatarAndres Rodriguez <andresx7@gmail.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent c5296d14
...@@ -334,21 +334,25 @@ TRACE_EVENT(amdgpu_vm_copy_ptes, ...@@ -334,21 +334,25 @@ TRACE_EVENT(amdgpu_vm_copy_ptes,
); );
TRACE_EVENT(amdgpu_vm_flush, TRACE_EVENT(amdgpu_vm_flush,
TP_PROTO(uint64_t pd_addr, unsigned ring, unsigned id), TP_PROTO(struct amdgpu_ring *ring, unsigned vm_id,
TP_ARGS(pd_addr, ring, id), uint64_t pd_addr),
TP_ARGS(ring, vm_id, pd_addr),
TP_STRUCT__entry( TP_STRUCT__entry(
__field(u64, pd_addr)
__field(u32, ring) __field(u32, ring)
__field(u32, id) __field(u32, vm_id)
__field(u32, vm_hub)
__field(u64, pd_addr)
), ),
TP_fast_assign( TP_fast_assign(
__entry->ring = ring->idx;
__entry->vm_id = vm_id;
__entry->vm_hub = ring->funcs->vmhub;
__entry->pd_addr = pd_addr; __entry->pd_addr = pd_addr;
__entry->ring = ring;
__entry->id = id;
), ),
TP_printk("ring=%u, id=%u, pd_addr=%010Lx", TP_printk("ring=%u, id=%u, hub=%u, pd_addr=%010Lx",
__entry->ring, __entry->id, __entry->pd_addr) __entry->ring, __entry->vm_id,
__entry->vm_hub,__entry->pd_addr)
); );
TRACE_EVENT(amdgpu_bo_list_set, TRACE_EVENT(amdgpu_bo_list_set,
......
...@@ -621,7 +621,7 @@ int amdgpu_vm_flush(struct amdgpu_ring *ring, struct amdgpu_job *job) ...@@ -621,7 +621,7 @@ int amdgpu_vm_flush(struct amdgpu_ring *ring, struct amdgpu_job *job)
u64 pd_addr = amdgpu_vm_adjust_mc_addr(adev, job->vm_pd_addr); u64 pd_addr = amdgpu_vm_adjust_mc_addr(adev, job->vm_pd_addr);
struct dma_fence *fence; struct dma_fence *fence;
trace_amdgpu_vm_flush(pd_addr, ring->idx, job->vm_id); trace_amdgpu_vm_flush(ring, job->vm_id, pd_addr);
amdgpu_ring_emit_vm_flush(ring, job->vm_id, pd_addr); amdgpu_ring_emit_vm_flush(ring, job->vm_id, pd_addr);
r = amdgpu_fence_emit(ring, &fence); r = amdgpu_fence_emit(ring, &fence);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment