Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/sched: use __string in tracepoints

Otherwise, ring names are marked [UNSAFE-MEMORY].

Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Cc: Rob Clark <robdclark@chromium.org>
Reviewed-by: Andrey Grodzovsky <andrey.grodzovsky@amd.com>
Signed-off-by: Andrey Grodzovsky <andrey.grodzovsky@amd.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220412204809.824491-2-olvaffe@gmail.com

authored by

Chia-I Wu and committed by
Andrey Grodzovsky
e87826ef 4a35c23f

+6 -6
+6 -6
drivers/gpu/drm/scheduler/gpu_scheduler_trace.h
··· 38 38 TP_STRUCT__entry( 39 39 __field(struct drm_sched_entity *, entity) 40 40 __field(struct dma_fence *, fence) 41 - __field(const char *, name) 41 + __string(name, sched_job->sched->name) 42 42 __field(uint64_t, id) 43 43 __field(u32, job_count) 44 44 __field(int, hw_job_count) ··· 48 48 __entry->entity = entity; 49 49 __entry->id = sched_job->id; 50 50 __entry->fence = &sched_job->s_fence->finished; 51 - __entry->name = sched_job->sched->name; 51 + __assign_str(name, sched_job->sched->name); 52 52 __entry->job_count = spsc_queue_count(&entity->job_queue); 53 53 __entry->hw_job_count = atomic_read( 54 54 &sched_job->sched->hw_rq_count); 55 55 ), 56 56 TP_printk("entity=%p, id=%llu, fence=%p, ring=%s, job count:%u, hw job count:%d", 57 57 __entry->entity, __entry->id, 58 - __entry->fence, __entry->name, 58 + __entry->fence, __get_str(name), 59 59 __entry->job_count, __entry->hw_job_count) 60 60 ); 61 61 ··· 86 86 TP_PROTO(struct drm_sched_job *sched_job, struct dma_fence *fence), 87 87 TP_ARGS(sched_job, fence), 88 88 TP_STRUCT__entry( 89 - __field(const char *,name) 89 + __string(name, sched_job->sched->name) 90 90 __field(uint64_t, id) 91 91 __field(struct dma_fence *, fence) 92 92 __field(uint64_t, ctx) ··· 94 94 ), 95 95 96 96 TP_fast_assign( 97 - __entry->name = sched_job->sched->name; 97 + __assign_str(name, sched_job->sched->name); 98 98 __entry->id = sched_job->id; 99 99 __entry->fence = fence; 100 100 __entry->ctx = fence->context; 101 101 __entry->seqno = fence->seqno; 102 102 ), 103 103 TP_printk("job ring=%s, id=%llu, depends fence=%p, context=%llu, seq=%u", 104 - __entry->name, __entry->id, 104 + __get_str(name), __entry->id, 105 105 __entry->fence, __entry->ctx, 106 106 __entry->seqno) 107 107 );