diff options
author | Christian König <christian.koenig@amd.com> | 2018-01-09 13:32:58 -0500 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2018-02-19 14:17:46 -0500 |
commit | c35ff18823f877459b2b4ace61fb08a9b56106f9 (patch) | |
tree | b50c86bb2bd8e2b8d6ddf6d846c37fe405c3fafc | |
parent | 5c2ff9a60d2123df1e4ccee363541dd17916ddea (diff) |
drm/amdgpu: trace allocated PASIDs
Trace all allocated PASIDs.
Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Chunming Zhou <david1.zhou@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_ids.c | 4 | ||||
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h | 22 |
2 files changed, 26 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ids.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ids.c index 842caa5ed73b..3b9d318cf166 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ids.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ids.c | |||
@@ -69,6 +69,9 @@ int amdgpu_pasid_alloc(unsigned int bits) | |||
69 | break; | 69 | break; |
70 | } | 70 | } |
71 | 71 | ||
72 | if (pasid >= 0) | ||
73 | trace_amdgpu_pasid_allocated(pasid); | ||
74 | |||
72 | return pasid; | 75 | return pasid; |
73 | } | 76 | } |
74 | 77 | ||
@@ -78,6 +81,7 @@ int amdgpu_pasid_alloc(unsigned int bits) | |||
78 | */ | 81 | */ |
79 | void amdgpu_pasid_free(unsigned int pasid) | 82 | void amdgpu_pasid_free(unsigned int pasid) |
80 | { | 83 | { |
84 | trace_amdgpu_pasid_freed(pasid); | ||
81 | ida_simple_remove(&amdgpu_pasid_ida, pasid); | 85 | ida_simple_remove(&amdgpu_pasid_ida, pasid); |
82 | } | 86 | } |
83 | 87 | ||
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h index 251ca921c63e..567a437f2208 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h | |||
@@ -378,6 +378,28 @@ TRACE_EVENT(amdgpu_vm_flush, | |||
378 | __entry->vm_hub,__entry->pd_addr) | 378 | __entry->vm_hub,__entry->pd_addr) |
379 | ); | 379 | ); |
380 | 380 | ||
381 | DECLARE_EVENT_CLASS(amdgpu_pasid, | ||
382 | TP_PROTO(unsigned pasid), | ||
383 | TP_ARGS(pasid), | ||
384 | TP_STRUCT__entry( | ||
385 | __field(unsigned, pasid) | ||
386 | ), | ||
387 | TP_fast_assign( | ||
388 | __entry->pasid = pasid; | ||
389 | ), | ||
390 | TP_printk("pasid=%u", __entry->pasid) | ||
391 | ); | ||
392 | |||
393 | DEFINE_EVENT(amdgpu_pasid, amdgpu_pasid_allocated, | ||
394 | TP_PROTO(unsigned pasid), | ||
395 | TP_ARGS(pasid) | ||
396 | ); | ||
397 | |||
398 | DEFINE_EVENT(amdgpu_pasid, amdgpu_pasid_freed, | ||
399 | TP_PROTO(unsigned pasid), | ||
400 | TP_ARGS(pasid) | ||
401 | ); | ||
402 | |||
381 | TRACE_EVENT(amdgpu_bo_list_set, | 403 | TRACE_EVENT(amdgpu_bo_list_set, |
382 | TP_PROTO(struct amdgpu_bo_list *list, struct amdgpu_bo *bo), | 404 | TP_PROTO(struct amdgpu_bo_list *list, struct amdgpu_bo *bo), |
383 | TP_ARGS(list, bo), | 405 | TP_ARGS(list, bo), |