Commit 165e4e07 authored by Christian König's avatar Christian König Committed by Alex Deucher

drm/amdgpu: add VM pointer to id trace

Because of the scheduler all traces come from the same thread now and
can't be distincted otherwise.
Signed-off-by: default avatarChristian König <christian.koenig@amd.com>
Acked-by: default avatarAlex Deucher <alexander.deucher@amd.com>
Reviewed-by: default avatarChunming Zhou <david1.zhou@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 1c343fc9
...@@ -100,18 +100,21 @@ TRACE_EVENT(amdgpu_sched_run_job, ...@@ -100,18 +100,21 @@ TRACE_EVENT(amdgpu_sched_run_job,
TRACE_EVENT(amdgpu_vm_grab_id, TRACE_EVENT(amdgpu_vm_grab_id,
TP_PROTO(unsigned vmid, int ring), TP_PROTO(struct amdgpu_vm *vm, unsigned vmid, int ring),
TP_ARGS(vmid, ring), TP_ARGS(vm, vmid, ring),
TP_STRUCT__entry( TP_STRUCT__entry(
__field(struct amdgpu_vm *, vm)
__field(u32, vmid) __field(u32, vmid)
__field(u32, ring) __field(u32, ring)
), ),
TP_fast_assign( TP_fast_assign(
__entry->vm = vm;
__entry->vmid = vmid; __entry->vmid = vmid;
__entry->ring = ring; __entry->ring = ring;
), ),
TP_printk("vmid=%u, ring=%u", __entry->vmid, __entry->ring) TP_printk("vm=%p, id=%u, ring=%u", __entry->vm, __entry->vmid,
__entry->ring)
); );
TRACE_EVENT(amdgpu_vm_bo_map, TRACE_EVENT(amdgpu_vm_bo_map,
......
...@@ -174,7 +174,7 @@ int amdgpu_vm_grab_id(struct amdgpu_vm *vm, struct amdgpu_ring *ring, ...@@ -174,7 +174,7 @@ int amdgpu_vm_grab_id(struct amdgpu_vm *vm, struct amdgpu_ring *ring,
owner = atomic_long_read(&adev->vm_manager.ids[id].owner); owner = atomic_long_read(&adev->vm_manager.ids[id].owner);
if (owner == (long)vm) { if (owner == (long)vm) {
trace_amdgpu_vm_grab_id(vm_id->id, ring->idx); trace_amdgpu_vm_grab_id(vm, vm_id->id, ring->idx);
return 0; return 0;
} }
} }
...@@ -190,7 +190,7 @@ int amdgpu_vm_grab_id(struct amdgpu_vm *vm, struct amdgpu_ring *ring, ...@@ -190,7 +190,7 @@ int amdgpu_vm_grab_id(struct amdgpu_vm *vm, struct amdgpu_ring *ring,
if (fence == NULL) { if (fence == NULL) {
/* found a free one */ /* found a free one */
vm_id->id = i; vm_id->id = i;
trace_amdgpu_vm_grab_id(i, ring->idx); trace_amdgpu_vm_grab_id(vm, i, ring->idx);
return 0; return 0;
} }
...@@ -209,7 +209,7 @@ int amdgpu_vm_grab_id(struct amdgpu_vm *vm, struct amdgpu_ring *ring, ...@@ -209,7 +209,7 @@ int amdgpu_vm_grab_id(struct amdgpu_vm *vm, struct amdgpu_ring *ring,
fence = adev->vm_manager.ids[choices[i]].active; fence = adev->vm_manager.ids[choices[i]].active;
vm_id->id = choices[i]; vm_id->id = choices[i];
trace_amdgpu_vm_grab_id(choices[i], ring->idx); trace_amdgpu_vm_grab_id(vm, choices[i], ring->idx);
return amdgpu_sync_fence(ring->adev, sync, fence); return amdgpu_sync_fence(ring->adev, sync, 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