Re: [PATCH v7 2/2] Tracepoint: register/unregister struct tracepoint

From: Mathieu Desnoyers
Date: Fri Mar 21 2014 - 22:35:04 EST




----- Original Message -----
> From: "Steven Rostedt" <rostedt@xxxxxxxxxxx>
> To: "Mathieu Desnoyers" <mathieu.desnoyers@xxxxxxxxxxxx>
> Cc: linux-kernel@xxxxxxxxxxxxxxx, "Ingo Molnar" <mingo@xxxxxxxxxx>, "Frederic Weisbecker" <fweisbec@xxxxxxxxx>,
> "Andrew Morton" <akpm@xxxxxxxxxxxxxxxxxxxx>, "Frank Ch. Eigler" <fche@xxxxxxxxxx>, "Johannes Berg"
> <johannes.berg@xxxxxxxxx>
> Sent: Friday, March 21, 2014 3:40:00 PM
> Subject: Re: [PATCH v7 2/2] Tracepoint: register/unregister struct tracepoint
>
> On Fri, 21 Mar 2014 01:19:02 -0400
>
> > diff --git a/include/linux/ftrace_event.h b/include/linux/ftrace_event.h
> > index 4e4cc28..1592c1c 100644
> > --- a/include/linux/ftrace_event.h
> > +++ b/include/linux/ftrace_event.h
> > @@ -230,6 +230,7 @@ struct ftrace_event_call {
> > struct list_head list;
> > struct ftrace_event_class *class;
> > char *name;
> > + struct tracepoint *tp;
>
>
> This change right here just added 17K to the kernel (on a minimum config):
>
> text data bss dec hex filename
> 8425515 2018936 1302528 11746979 b33ea3 vmlinux.orig
> 8424914 2036472 1302528 11763914 b380ca vmlinux
>
> The two are redundant. Might as well remove .name and then
> use .tp->name for referencing the name of the event.

What should we do about:

kernel/trace/trace_export.c:

struct ftrace_event_call __used event_##call = { \
.name = #call, \
.event.type = etype, \
.class = &event_class_ftrace_##call, \
.print_fmt = print, \
.flags = TRACE_EVENT_FL_IGNORE_ENABLE | TRACE_EVENT_FL_USE_CALL_FILTER, \
};

when replacing the .name for a .tp->name, it is unclear what the
tracepoint structure should be (is there even one ?).

Thanks,

Mathieu


>
> -- Steve
>
>
> > struct trace_event event;
> > const char *print_fmt;
> > struct event_filter *filter;
>

--
Mathieu Desnoyers
EfficiOS Inc.
http://www.efficios.com
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/