Message ID | 20220408211230.601475-1-olvaffe@gmail.com |
---|---|
State | Superseded |
Headers | show |
Series | drm/msm: add trace_dma_fence_emit to msm_gpu_submit | expand |
Sorry for the delayed reply. Am 12.04.22 um 21:41 schrieb Rob Clark: > On Sat, Apr 9, 2022 at 7:33 AM Christian König <christian.koenig@amd.com> wrote: >> Am 08.04.22 um 23:12 schrieb Chia-I Wu: >>> In practice, trace_dma_fence_init is good enough and almost no driver >>> calls trace_dma_fence_emit. But this is still more correct in theory. >> Well, the reason why basically no driver is calling this is because it >> is pretty much deprecated. >> >> We do have a case in the GPU scheduler where it makes sense to distinct >> between init and emit, but it doesn't really matter for drivers. >> >> So I'm not sure if it's a good idea to add that here. > visualization can't easily differentiate between drivers/timelines > where the split matters and ones where it doesn't.. IMO it is better > to just have the extra trace even in the cases where it comes at the > same time as the init trace That's exactly the reason why I want to remove the extra trace. To make it clear this is only useful for debugging and *NOT* for actually visualizing things. So by adding that here you add more confusion than solving anything. Regards, Christian. > > BR, > -R > >> Regards, >> Christian. >> >>> Signed-off-by: Chia-I Wu <olvaffe@gmail.com> >>> Cc: Rob Clark <robdclark@chromium.org> >>> --- >>> drivers/gpu/drm/msm/msm_gpu.c | 2 ++ >>> 1 file changed, 2 insertions(+) >>> >>> diff --git a/drivers/gpu/drm/msm/msm_gpu.c b/drivers/gpu/drm/msm/msm_gpu.c >>> index faf0c242874e..a82193f41ea2 100644 >>> --- a/drivers/gpu/drm/msm/msm_gpu.c >>> +++ b/drivers/gpu/drm/msm/msm_gpu.c >>> @@ -15,6 +15,7 @@ >>> #include <linux/string_helpers.h> >>> #include <linux/devcoredump.h> >>> #include <linux/sched/task.h> >>> +#include <trace/events/dma_fence.h> >>> >>> /* >>> * Power Management: >>> @@ -769,6 +770,7 @@ void msm_gpu_submit(struct msm_gpu *gpu, struct msm_gem_submit *submit) >>> gpu->active_submits++; >>> mutex_unlock(&gpu->active_lock); >>> >>> + trace_dma_fence_emit(submit->hw_fence); >>> gpu->funcs->submit(gpu, submit); >>> gpu->cur_ctx_seqno = submit->queue->ctx->seqno; >>>
diff --git a/drivers/gpu/drm/msm/msm_gpu.c b/drivers/gpu/drm/msm/msm_gpu.c index faf0c242874e..a82193f41ea2 100644 --- a/drivers/gpu/drm/msm/msm_gpu.c +++ b/drivers/gpu/drm/msm/msm_gpu.c @@ -15,6 +15,7 @@ #include <linux/string_helpers.h> #include <linux/devcoredump.h> #include <linux/sched/task.h> +#include <trace/events/dma_fence.h> /* * Power Management: @@ -769,6 +770,7 @@ void msm_gpu_submit(struct msm_gpu *gpu, struct msm_gem_submit *submit) gpu->active_submits++; mutex_unlock(&gpu->active_lock); + trace_dma_fence_emit(submit->hw_fence); gpu->funcs->submit(gpu, submit); gpu->cur_ctx_seqno = submit->queue->ctx->seqno;
In practice, trace_dma_fence_init is good enough and almost no driver calls trace_dma_fence_emit. But this is still more correct in theory. Signed-off-by: Chia-I Wu <olvaffe@gmail.com> Cc: Rob Clark <robdclark@chromium.org> --- drivers/gpu/drm/msm/msm_gpu.c | 2 ++ 1 file changed, 2 insertions(+)