Re: [PATCH] maple_tree: fix tracepoint string pointers

From: Martin Kaiser

Date: Fri Oct 31 2025 - 06:23:24 EST


Thus wrote Andrew Morton (akpm@xxxxxxxxxxxxxxxxxxxx):

> > - trace_ma_op(__func__, mas);
> > + trace_ma_op(TP_FCT, mas);


> What could cause the storage for __func__ to disappear as you suggest?

I see your point. For __func__, the compiler generates a local symbol in
.rodata that should always be accessible by its address.

One case that doesn't work without my patch would be trace-cmd record to save
the binary ringbuffer and trace-cmd report to parse it in userspace. The
address of __func__ can't be dereferenced from userspace but tracepoint_string
will add an entry to /sys/kernel/tracing/printk_formats

Best regards,
Martin