aboutsummaryrefslogtreecommitdiffstats
path: root/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3158-drm-amdgpu-trace-allocated-PASIDs.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3158-drm-amdgpu-trace-allocated-PASIDs.patch')
-rw-r--r--meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3158-drm-amdgpu-trace-allocated-PASIDs.patch80
1 files changed, 80 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3158-drm-amdgpu-trace-allocated-PASIDs.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3158-drm-amdgpu-trace-allocated-PASIDs.patch
new file mode 100644
index 00000000..0669f83f
--- /dev/null
+++ b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3158-drm-amdgpu-trace-allocated-PASIDs.patch
@@ -0,0 +1,80 @@
+From 1f7acf2c6e54f8a206f5a5901ef1b9c3eca39bf6 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Christian=20K=C3=B6nig?= <christian.koenig@amd.com>
+Date: Tue, 9 Jan 2018 19:32:58 +0100
+Subject: [PATCH 3158/4131] drm/amdgpu: trace allocated PASIDs
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Trace all allocated PASIDs.
+
+Signed-off-by: Christian König <christian.koenig@amd.com>
+Reviewed-by: Chunming Zhou <david1.zhou@amd.com>
+
+Conflicts:
+ drivers/gpu/drm/amd/amdgpu/amdgpu_ids.c
+
+Change-Id: I5570e128f5a485ac24eb81b892bf20179b0237f5
+---
+ drivers/gpu/drm/amd/amdgpu/amdgpu_ids.c | 4 ++++
+ drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h | 22 ++++++++++++++++++++++
+ 2 files changed, 26 insertions(+)
+
+diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ids.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ids.c
+index 1dcfaee..01bfd79 100644
+--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ids.c
++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ids.c
+@@ -73,6 +73,9 @@ int amdgpu_pasid_alloc(unsigned int bits)
+ break;
+ }
+
++ if (pasid >= 0)
++ trace_amdgpu_pasid_allocated(pasid);
++
+ return pasid;
+ }
+
+@@ -82,6 +85,7 @@ int amdgpu_pasid_alloc(unsigned int bits)
+ */
+ void amdgpu_pasid_free(unsigned int pasid)
+ {
++ trace_amdgpu_pasid_freed(pasid);
+ ida_simple_remove(&amdgpu_vm_pasid_ida, pasid);
+ }
+
+diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h
+index 7edc573..f43968d 100644
+--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h
++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h
+@@ -356,6 +356,28 @@ TRACE_EVENT(amdgpu_vm_flush,
+ __entry->vm_hub,__entry->pd_addr)
+ );
+
++DECLARE_EVENT_CLASS(amdgpu_pasid,
++ TP_PROTO(unsigned pasid),
++ TP_ARGS(pasid),
++ TP_STRUCT__entry(
++ __field(unsigned, pasid)
++ ),
++ TP_fast_assign(
++ __entry->pasid = pasid;
++ ),
++ TP_printk("pasid=%u", __entry->pasid)
++);
++
++DEFINE_EVENT(amdgpu_pasid, amdgpu_pasid_allocated,
++ TP_PROTO(unsigned pasid),
++ TP_ARGS(pasid)
++);
++
++DEFINE_EVENT(amdgpu_pasid, amdgpu_pasid_freed,
++ TP_PROTO(unsigned pasid),
++ TP_ARGS(pasid)
++);
++
+ TRACE_EVENT(amdgpu_bo_list_set,
+ TP_PROTO(struct amdgpu_bo_list *list, struct amdgpu_bo *bo),
+ TP_ARGS(list, bo),
+--
+2.7.4
+