drm/amdgpu: trace the vmhub in grab_id as well
authorChristian König <christian.koenig@amd.com>
Fri, 7 Apr 2017 13:31:13 +0000 (15:31 +0200)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 28 Apr 2017 21:32:20 +0000 (17:32 -0400)
Trace on which VMHUB we assigned an VMID.

Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h
drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c

index ee9d0f346d75341197c9a50747c664d1c3bc77c4..a98e4b8dd136ca8c2be9f9f3adc480662b77038c 100644 (file)
@@ -190,26 +190,29 @@ TRACE_EVENT(amdgpu_sched_run_job,
 
 
 TRACE_EVENT(amdgpu_vm_grab_id,
-           TP_PROTO(struct amdgpu_vm *vm, int ring, struct amdgpu_job *job),
+           TP_PROTO(struct amdgpu_vm *vm, struct amdgpu_ring *ring,
+                    struct amdgpu_job *job),
            TP_ARGS(vm, ring, job),
            TP_STRUCT__entry(
                             __field(struct amdgpu_vm *, vm)
                             __field(u32, ring)
-                            __field(u32, vmid)
+                            __field(u32, vm_id)
+                            __field(u32, vm_hub)
                             __field(u64, pd_addr)
                             __field(u32, needs_flush)
                             ),
 
            TP_fast_assign(
                           __entry->vm = vm;
-                          __entry->ring = ring;
-                          __entry->vmid = job->vm_id;
+                          __entry->ring = ring->idx;
+                          __entry->vm_id = job->vm_id;
+                          __entry->vm_hub = ring->funcs->vmhub,
                           __entry->pd_addr = job->vm_pd_addr;
                           __entry->needs_flush = job->vm_needs_flush;
                           ),
-           TP_printk("vm=%p, ring=%u, id=%u, pd_addr=%010Lx needs_flush=%u",
-                     __entry->vm, __entry->ring, __entry->vmid,
-                     __entry->pd_addr, __entry->needs_flush)
+           TP_printk("vm=%p, ring=%u, id=%u, hub=%u, pd_addr=%010Lx needs_flush=%u",
+                     __entry->vm, __entry->ring, __entry->vm_id,
+                     __entry->vm_hub, __entry->pd_addr, __entry->needs_flush)
 );
 
 TRACE_EVENT(amdgpu_vm_bo_map,
index 4e6c1e4072ca05aede0bc6a6a2587f1dbc7a6342..f23f1b09d8a93c2e74637d753ffbca1c539d69ed 100644 (file)
@@ -533,7 +533,7 @@ no_flush_needed:
        list_move_tail(&id->list, &id_mgr->ids_lru);
 
        job->vm_id = id - id_mgr->ids;
-       trace_amdgpu_vm_grab_id(vm, ring->idx, job);
+       trace_amdgpu_vm_grab_id(vm, ring, job);
 
 error:
        mutex_unlock(&id_mgr->lock);