2023-03-23 11:45:02

by Wenchao Hao

[permalink] [raw]
Subject: [PATCH] trace:cma: remove unnecessary event class cma_alloc_class

After commit cb6c33d4dc09 ("cma: tracing: print alloc result in
trace_cma_alloc_finish"), cma_alloc_class has only one event which is
cma_alloc_busy_retry. So we can remove the cma_alloc_class.

Signed-off-by: Wenchao Hao <[email protected]>
---
include/trace/events/cma.h | 58 ++++++++++++++++----------------------
1 file changed, 25 insertions(+), 33 deletions(-)

diff --git a/include/trace/events/cma.h b/include/trace/events/cma.h
index ef75ea606ab2..25103e67737c 100644
--- a/include/trace/events/cma.h
+++ b/include/trace/events/cma.h
@@ -8,37 +8,6 @@
#include <linux/types.h>
#include <linux/tracepoint.h>

-DECLARE_EVENT_CLASS(cma_alloc_class,
-
- TP_PROTO(const char *name, unsigned long pfn, const struct page *page,
- unsigned long count, unsigned int align),
-
- TP_ARGS(name, pfn, page, count, align),
-
- TP_STRUCT__entry(
- __string(name, name)
- __field(unsigned long, pfn)
- __field(const struct page *, page)
- __field(unsigned long, count)
- __field(unsigned int, align)
- ),
-
- TP_fast_assign(
- __assign_str(name, name);
- __entry->pfn = pfn;
- __entry->page = page;
- __entry->count = count;
- __entry->align = align;
- ),
-
- TP_printk("name=%s pfn=0x%lx page=%p count=%lu align=%u",
- __get_str(name),
- __entry->pfn,
- __entry->page,
- __entry->count,
- __entry->align)
-);
-
TRACE_EVENT(cma_release,

TP_PROTO(const char *name, unsigned long pfn, const struct page *page,
@@ -125,12 +94,35 @@ TRACE_EVENT(cma_alloc_finish,
__entry->errorno)
);

-DEFINE_EVENT(cma_alloc_class, cma_alloc_busy_retry,
+TRACE_EVENT(cma_alloc_busy_retry,

TP_PROTO(const char *name, unsigned long pfn, const struct page *page,
unsigned long count, unsigned int align),

- TP_ARGS(name, pfn, page, count, align)
+ TP_ARGS(name, pfn, page, count, align),
+
+ TP_STRUCT__entry(
+ __string(name, name)
+ __field(unsigned long, pfn)
+ __field(const struct page *, page)
+ __field(unsigned long, count)
+ __field(unsigned int, align)
+ ),
+
+ TP_fast_assign(
+ __assign_str(name, name);
+ __entry->pfn = pfn;
+ __entry->page = page;
+ __entry->count = count;
+ __entry->align = align;
+ ),
+
+ TP_printk("name=%s pfn=0x%lx page=%p count=%lu align=%u",
+ __get_str(name),
+ __entry->pfn,
+ __entry->page,
+ __entry->count,
+ __entry->align)
);

#endif /* _TRACE_CMA_H */
--
2.35.3


2023-03-24 03:13:47

by Steven Rostedt

[permalink] [raw]
Subject: Re: [PATCH] trace:cma: remove unnecessary event class cma_alloc_class

On Thu, 23 Mar 2023 19:41:36 +0800
Wenchao Hao <[email protected]> wrote:

> After commit cb6c33d4dc09 ("cma: tracing: print alloc result in
> trace_cma_alloc_finish"), cma_alloc_class has only one event which is
> cma_alloc_busy_retry. So we can remove the cma_alloc_class.
>

This is fine for an aesthetic view, but it has no functional change.
TRACE_EVENT() is simply defined as:

#define TRACE_EVENT(name, proto, args, tstruct, assign, print) \
DECLARE_EVENT_CLASS(name, \
PARAMS(proto), \
PARAMS(args), \
PARAMS(tstruct), \
PARAMS(assign), \
PARAMS(print)); \
DEFINE_EVENT(name, name, PARAMS(proto), PARAMS(args));

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/include/trace/trace_events.h#n29

This patch simply un-open-codes it.

Acked-by: Steven Rostedt (Google) <[email protected]>

Cheers,

-- Steve


> Signed-off-by: Wenchao Hao <[email protected]>
> ---
> include/trace/events/cma.h | 58 ++++++++++++++++----------------------
> 1 file changed, 25 insertions(+), 33 deletions(-)
>
> diff --git a/include/trace/events/cma.h b/include/trace/events/cma.h
> index ef75ea606ab2..25103e67737c 100644
> --- a/include/trace/events/cma.h
> +++ b/include/trace/events/cma.h
> @@ -8,37 +8,6 @@
> #include <linux/types.h>
> #include <linux/tracepoint.h>
>
> -DECLARE_EVENT_CLASS(cma_alloc_class,
> -
> - TP_PROTO(const char *name, unsigned long pfn, const struct page *page,
> - unsigned long count, unsigned int align),
> -
> - TP_ARGS(name, pfn, page, count, align),
> -
> - TP_STRUCT__entry(
> - __string(name, name)
> - __field(unsigned long, pfn)
> - __field(const struct page *, page)
> - __field(unsigned long, count)
> - __field(unsigned int, align)
> - ),
> -
> - TP_fast_assign(
> - __assign_str(name, name);
> - __entry->pfn = pfn;
> - __entry->page = page;
> - __entry->count = count;
> - __entry->align = align;
> - ),
> -
> - TP_printk("name=%s pfn=0x%lx page=%p count=%lu align=%u",
> - __get_str(name),
> - __entry->pfn,
> - __entry->page,
> - __entry->count,
> - __entry->align)
> -);
> -
> TRACE_EVENT(cma_release,
>
> TP_PROTO(const char *name, unsigned long pfn, const struct page *page,
> @@ -125,12 +94,35 @@ TRACE_EVENT(cma_alloc_finish,
> __entry->errorno)
> );
>
> -DEFINE_EVENT(cma_alloc_class, cma_alloc_busy_retry,
> +TRACE_EVENT(cma_alloc_busy_retry,
>
> TP_PROTO(const char *name, unsigned long pfn, const struct page *page,
> unsigned long count, unsigned int align),
>
> - TP_ARGS(name, pfn, page, count, align)
> + TP_ARGS(name, pfn, page, count, align),
> +
> + TP_STRUCT__entry(
> + __string(name, name)
> + __field(unsigned long, pfn)
> + __field(const struct page *, page)
> + __field(unsigned long, count)
> + __field(unsigned int, align)
> + ),
> +
> + TP_fast_assign(
> + __assign_str(name, name);
> + __entry->pfn = pfn;
> + __entry->page = page;
> + __entry->count = count;
> + __entry->align = align;
> + ),
> +
> + TP_printk("name=%s pfn=0x%lx page=%p count=%lu align=%u",
> + __get_str(name),
> + __entry->pfn,
> + __entry->page,
> + __entry->count,
> + __entry->align)
> );
>
> #endif /* _TRACE_CMA_H */