On Mon, 20 Jul 2026 00:24:08 +0530
Aditya Sharma <[email protected]> wrote:

> diff --git a/include/trace/events/mm_reaper.h 
> b/include/trace/events/mm_reaper.h
> new file mode 100644
> index 000000000..315bced7c
> --- /dev/null
> +++ b/include/trace/events/mm_reaper.h
> @@ -0,0 +1,73 @@
> +/* SPDX-License-Identifier: GPL-2.0 */
> +#undef TRACE_SYSTEM
> +#define TRACE_SYSTEM mm_reaper
> +
> +#if !defined(_TRACE_MM_REAPER_H) || defined(TRACE_HEADER_MULTI_READ)
> +#define _TRACE_MM_REAPER_H
> +
> +#include <linux/tracepoint.h>
> +#include <linux/sched.h>
> +#include <linux/topology.h>
> +
> +TRACE_EVENT(mm_async_teardown_queue,
> +
> +     TP_PROTO(struct mm_struct *mm, unsigned long rss),
> +
> +     TP_ARGS(mm, rss),
> +
> +     TP_STRUCT__entry(
> +             __field(struct mm_struct *, mm)
> +             __field(int, pid)
> +             __array(char, comm, TASK_COMM_LEN)

There's an effort to make comm size more dynamic and we want to prevent more
memcpy of the comm based on TASK_COMM_LEN. Please change the above to:

                __string(comm, comm);


> +             __field(unsigned long, rss)
> +             __field(int, node)
> +     ),
> +
> +     TP_fast_assign(
> +             __entry->mm = mm;
> +             __entry->pid = current->pid;
> +             memcpy(__entry->comm, current->comm, TASK_COMM_LEN);

And this to:

                __assign_str(comm);

> +             __entry->rss = rss;
> +             __entry->node = numa_node_id();
> +     ),
> +
> +     TP_printk("mm=%p pid=%d comm=%s rss=%lukB node=%d",
> +             __entry->mm,
> +             __entry->pid,
> +             __entry->comm,

and this to:

                __get_str(comm),

Thanks,

-- Steve

> +             __entry->rss << (PAGE_SHIFT - 10),
> +             __entry->node
> +     )
> +);
> +

Reply via email to