[PATCH 8/8] drm/amdgpu: trace vm hub during flush as well v2

Alex Deucher alexdeucher at gmail.com
Tue Apr 11 14:44:47 UTC 2017


On Tue, Apr 11, 2017 at 4:44 AM, Christian König
<deathsimple at vodafone.de> wrote:
> From: Christian König <christian.koenig at amd.com>
>
> Trace on which hub we are doing the flush.
>
> v2: fix typo in commit message
>
> Signed-off-by: Christian König <christian.koenig at amd.com>

Reviewed-by: Alex Deucher <alexander.deucher at amd.com>

> ---
>  drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h | 20 ++++++++++++--------
>  drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c    |  2 +-
>  2 files changed, 13 insertions(+), 9 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h
> index 6032161..f95a386 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h
> @@ -334,21 +334,25 @@ TRACE_EVENT(amdgpu_vm_copy_ptes,
>  );
>
>  TRACE_EVENT(amdgpu_vm_flush,
> -           TP_PROTO(uint64_t pd_addr, unsigned ring, unsigned id),
> -           TP_ARGS(pd_addr, ring, id),
> +           TP_PROTO(struct amdgpu_ring *ring, unsigned vm_id,
> +                    uint64_t pd_addr),
> +           TP_ARGS(ring, vm_id, pd_addr),
>             TP_STRUCT__entry(
> -                            __field(u64, pd_addr)
>                              __field(u32, ring)
> -                            __field(u32, id)
> +                            __field(u32, vm_id)
> +                            __field(u32, vm_hub)
> +                            __field(u64, pd_addr)
>                              ),
>
>             TP_fast_assign(
> +                          __entry->ring = ring->idx;
> +                          __entry->vm_id = vm_id;
> +                          __entry->vm_hub = ring->funcs->vmhub;
>                            __entry->pd_addr = pd_addr;
> -                          __entry->ring = ring;
> -                          __entry->id = id;
>                            ),
> -           TP_printk("ring=%u, id=%u, pd_addr=%010Lx",
> -                     __entry->ring, __entry->id, __entry->pd_addr)
> +           TP_printk("ring=%u, id=%u, hub=%u, pd_addr=%010Lx",
> +                     __entry->ring, __entry->vm_id,
> +                     __entry->vm_hub,__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 494645e..9017b51 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
> @@ -621,7 +621,7 @@ int amdgpu_vm_flush(struct amdgpu_ring *ring, struct amdgpu_job *job)
>                 u64 pd_addr = amdgpu_vm_adjust_mc_addr(adev, job->vm_pd_addr);
>                 struct fence *fence;
>
> -               trace_amdgpu_vm_flush(pd_addr, ring->idx, job->vm_id);
> +               trace_amdgpu_vm_flush(ring, job->vm_id, pd_addr);
>                 amdgpu_ring_emit_vm_flush(ring, job->vm_id, pd_addr);
>
>                 r = amdgpu_fence_emit(ring, &fence);
> --
> 2.5.0
>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx


More information about the amd-gfx mailing list