Support backports for stable version. There are two places where null deref could happen before commit 2c92ca849fcc ("tracing/treewide: Remove second parameter of __assign_str()") Link: https://lore.kernel.org/linux-trace-kernel/20240516133454.681ba...@rorschach.local.home/
I've checked +v6.1.82 +v6.6.22 +v6.7.10, +v6.8, +6.9, this version need to be applied, So, I applied the patch, tested it again, and confirmed working fine. Fixes: 51270d573a8d ("tracing/net_sched: Fix tracepoints that save qdisc_dev() as a string") Link: https://lore.kernel.org/lkml/20240229143432.273b4...@gandalf.local.home/t/ Cc: net...@vger.kernel.org Cc: sta...@vger.kernel.org # +v6.1.82 +v6.6.22 +v6.7.10, +v6.8, +6.9 Tested-by: Yunseong Kim <ysk...@gmail.com> Reviewed-by: Pedro Tammela <pctamm...@mojatatu.com> Signed-off-by: Yunseong Kim <ysk...@gmail.com> Signed-off-by: Yeoreum Yun <yeoreum....@arm.com> Link: https://lore.kernel.org/r/20240624173320.24945-4-ysk...@gmail.com Signed-off-by: Paolo Abeni <pab...@redhat.com> Signed-off-by: Sasha Levin <sas...@kernel.org> --- include/trace/events/qdisc.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/trace/events/qdisc.h b/include/trace/events/qdisc.h index 1f4258308b96..061fd4960303 100644 --- a/include/trace/events/qdisc.h +++ b/include/trace/events/qdisc.h @@ -81,14 +81,14 @@ TRACE_EVENT(qdisc_reset, TP_ARGS(q), TP_STRUCT__entry( - __string( dev, qdisc_dev(q)->name ) + __string( dev, qdisc_dev(q) ? qdisc_dev(q)->name : "(null)" ) __string( kind, q->ops->id ) __field( u32, parent ) __field( u32, handle ) ), TP_fast_assign( - __assign_str(dev, qdisc_dev(q)->name); + __assign_str(dev, qdisc_dev(q) ? qdisc_dev(q)->name : "(null)"); __assign_str(kind, q->ops->id); __entry->parent = q->parent; __entry->handle = q->handle; -- 2.45.2