diff options
Diffstat (limited to 'common/recipes-kernel/linux/files/0336-drm-amdgpu-trace-the-pd_addr-in-vm_grab_id-as-well.patch')
-rw-r--r-- | common/recipes-kernel/linux/files/0336-drm-amdgpu-trace-the-pd_addr-in-vm_grab_id-as-well.patch | 91 |
1 files changed, 91 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/files/0336-drm-amdgpu-trace-the-pd_addr-in-vm_grab_id-as-well.patch b/common/recipes-kernel/linux/files/0336-drm-amdgpu-trace-the-pd_addr-in-vm_grab_id-as-well.patch new file mode 100644 index 00000000..6aadb63d --- /dev/null +++ b/common/recipes-kernel/linux/files/0336-drm-amdgpu-trace-the-pd_addr-in-vm_grab_id-as-well.patch @@ -0,0 +1,91 @@ +From fc314f63b963a4f72df4179ce8d95b6c3c3c1cbd Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Christian=20K=C3=B6nig?= <christian.koenig@amd.com> +Date: Fri, 26 Feb 2016 16:18:36 +0100 +Subject: [PATCH 0336/1110] drm/amdgpu: trace the pd_addr in vm_grab_id as well +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Makes matching it to the flushes much easier. + +Signed-off-by: Christian König <christian.koenig@amd.com> +Reviewed-by: Chunming Zhou <david1.zhou@amd.com> +Acked-by: Alex Deucher <alexander.deucher@amd.com> +Signed-off-by: Alex Deucher <alexander.deucher@amd.com> +--- + drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h | 19 +++++++++++-------- + drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 5 +++-- + 2 files changed, 14 insertions(+), 10 deletions(-) + +diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h +index 0254425..4bffcf6 100644 +--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h ++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h +@@ -100,21 +100,24 @@ TRACE_EVENT(amdgpu_sched_run_job, + + + TRACE_EVENT(amdgpu_vm_grab_id, +- TP_PROTO(struct amdgpu_vm *vm, unsigned vmid, int ring), +- TP_ARGS(vm, vmid, ring), ++ TP_PROTO(struct amdgpu_vm *vm, int ring, unsigned vmid, ++ uint64_t pd_addr), ++ TP_ARGS(vm, ring, vmid, pd_addr), + TP_STRUCT__entry( + __field(struct amdgpu_vm *, vm) +- __field(u32, vmid) + __field(u32, ring) ++ __field(u32, vmid) ++ __field(u64, pd_addr) + ), + + TP_fast_assign( + __entry->vm = vm; +- __entry->vmid = vmid; + __entry->ring = ring; ++ __entry->vmid = vmid; ++ __entry->pd_addr = pd_addr; + ), +- TP_printk("vm=%p, id=%u, ring=%u", __entry->vm, __entry->vmid, +- __entry->ring) ++ TP_printk("vm=%p, ring=%u, id=%u, pd_addr=%010Lx", __entry->vm, ++ __entry->ring, __entry->vmid, __entry->pd_addr) + ); + + TRACE_EVENT(amdgpu_vm_bo_map, +@@ -231,8 +234,8 @@ TRACE_EVENT(amdgpu_vm_flush, + __entry->ring = ring; + __entry->id = id; + ), +- TP_printk("pd_addr=%010Lx, ring=%u, id=%u", +- __entry->pd_addr, __entry->ring, __entry->id) ++ TP_printk("ring=%u, id=%u, pd_addr=%010Lx", ++ __entry->ring, __entry->id, __entry->pd_addr) + ); + + TRACE_EVENT(amdgpu_bo_list_set, +diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c +index d464bde..5bea6da 100644 +--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c ++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c +@@ -203,7 +203,8 @@ int amdgpu_vm_grab_id(struct amdgpu_vm *vm, struct amdgpu_ring *ring, + + *vm_id = id->mgr_id - adev->vm_manager.ids; + *vm_pd_addr = AMDGPU_VM_NO_FLUSH; +- trace_amdgpu_vm_grab_id(vm, *vm_id, ring->idx); ++ trace_amdgpu_vm_grab_id(vm, ring->idx, *vm_id, ++ *vm_pd_addr); + + mutex_unlock(&adev->vm_manager.lock); + return 0; +@@ -229,7 +230,7 @@ int amdgpu_vm_grab_id(struct amdgpu_vm *vm, struct amdgpu_ring *ring, + + *vm_id = id->mgr_id - adev->vm_manager.ids; + *vm_pd_addr = pd_addr; +- trace_amdgpu_vm_grab_id(vm, *vm_id, ring->idx); ++ trace_amdgpu_vm_grab_id(vm, ring->idx, *vm_id, *vm_pd_addr); + } + + mutex_unlock(&adev->vm_manager.lock); +-- +2.7.4 + |