login
Login
/
Register
Search
Search this site:
Forums
News
Blogs
Features
Site
Home
»
Mailing list archives
»
linux-kernel
»
2010
»
May
»
12
Re: [PATCH 08/10 final] tracing: Move print functions into event class
view
thread
Previous message: [
thread
] [
date
] [
author
]
Next message: [
thread
] [
date
] [
author
]
[view in full thread]
From: Frederic Weisbecker
Subject:
Re: [PATCH 08/10 final] tracing: Move print functions into event class
Date: Wednesday, May 12, 2010 - 11:37 am
On Wed, May 12, 2010 at 11:28:18AM -0400, Steven Rostedt wrote:
quoted text
> From: Steven Rostedt <srostedt@redhat.com> > > Currently, every event has its own trace_event structure. This is > fine since the structure is needed anyway. But the print function > structure (trace_event_functions) is now separate. Since the output > of the trace event is done by the class (with the exception of events > defined by DEFINE_EVENT_PRINT), it makes sense to have the class > define the print functions that all events in the class can use. > > This makes a bigger deal with the syscall events since all syscall events > use the same class. The savings here is another 30K. > > text data bss dec hex filename > 4913961 1088356 861512 6863829 68bbd5 vmlinux.orig > 4900382 1048964 861512 6810858 67ecea vmlinux.init > 4900446 1049028 861512 6810986 67ed6a vmlinux.preprint > 4895024 1023812 861512 6780348 6775bc vmlinux.print > > To accomplish this, and to let the class know what event is being > printed, the event structure is embedded in the ftrace_event_call > structure. This should not be an issues since the event structure > was created for each event anyway. > > Acked-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com> > Signed-off-by: Steven Rostedt <rostedt@goodmis.org> > --- > include/linux/ftrace_event.h | 2 +- > include/linux/syscalls.h | 18 +++------------ > include/trace/ftrace.h | 45 +++++++++++++++++----------------------- > kernel/trace/trace_events.c | 6 ++-- > kernel/trace/trace_kprobe.c | 14 +++++------- > kernel/trace/trace_syscalls.c | 8 +++++++ > 6 files changed, 41 insertions(+), 52 deletions(-) > > diff --git a/include/linux/ftrace_event.h b/include/linux/ftrace_event.h > index 4f77932..b1a007d 100644 > --- a/include/linux/ftrace_event.h > +++ b/include/linux/ftrace_event.h > @@ -148,7 +148,7 @@ struct ftrace_event_call { > struct ftrace_event_class *class; > char *name; > struct dentry *dir; > - struct trace_event *event; > + struct trace_event event; > int enabled; > int id; > const char *print_fmt; > diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h > index f725677..a1a86a5 100644 > --- a/include/linux/syscalls.h > +++ b/include/linux/syscalls.h > @@ -120,24 +120,20 @@ struct perf_event_attr; > > extern struct ftrace_event_class event_class_syscall_enter; > extern struct ftrace_event_class event_class_syscall_exit; > +extern struct trace_event_functions enter_syscall_print_funcs; > +extern struct trace_event_functions exit_syscall_print_funcs; > > #define SYSCALL_TRACE_ENTER_EVENT(sname) \ > static struct syscall_metadata __syscall_meta_##sname; \ > static struct ftrace_event_call \ > __attribute__((__aligned__(4))) event_enter_##sname; \ > - static struct trace_event_functions enter_syscall_print_funcs_##sname = { \ > - .trace = print_syscall_enter, \ > - }; \ > - static struct trace_event enter_syscall_print_##sname = { \ > - .funcs = &enter_syscall_print_funcs_##sname, \ > - }; \ > static struct ftrace_event_call __used \ > __attribute__((__aligned__(4))) \ > __attribute__((section("_ftrace_events"))) \ > event_enter_##sname = { \ > .name = "sys_enter"#sname, \ > .class = &event_class_syscall_enter, \ > - .event = &enter_syscall_print_##sname, \ > + .event.funcs = &enter_syscall_print_funcs, \
Ah ok, looks like I don't need to write this patch in fact :) --
unsubscribe notice
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to
majordomo@vger.kernel.org
More majordomo info at
http://vger.kernel.org/majordomo-info.html
Please read the FAQ at
http://www.tux.org/lkml/
Previous message: [
thread
] [
date
] [
author
]
Next message: [
thread
] [
date
] [
author
]
Messages in current thread:
[PATCH 00/10 final] tracing: Lowering the footprint of TRA ...
, Steven Rostedt
, (Wed May 12, 8:28 am)
[PATCH 01/10 final] tracing: Create class struct for events
, Steven Rostedt
, (Wed May 12, 8:28 am)
[PATCH 02/10 final] tracepoints: Add check trace callback type
, Steven Rostedt
, (Wed May 12, 8:28 am)
[PATCH 03/10 final] tracing: Let tracepoints have data pas ...
, Steven Rostedt
, (Wed May 12, 8:28 am)
[PATCH 04/10 final] tracing: Remove per event trace regist ...
, Steven Rostedt
, (Wed May 12, 8:28 am)
[PATCH 05/10 final] tracing: Move fields from event to cla ...
, Steven Rostedt
, (Wed May 12, 8:28 am)
[PATCH 06/10 final] tracing: Move raw_init from events to ...
, Steven Rostedt
, (Wed May 12, 8:28 am)
[PATCH 07/10 final] tracing: Allow events to share their p ...
, Steven Rostedt
, (Wed May 12, 8:28 am)
[PATCH 08/10 final] tracing: Move print functions into eve ...
, Steven Rostedt
, (Wed May 12, 8:28 am)
[PATCH 09/10 final] tracing: Remove duplicate id informati ...
, Steven Rostedt
, (Wed May 12, 8:28 am)
[PATCH 10/10 final] tracing: Combine event filter_active a ...
, Steven Rostedt
, (Wed May 12, 8:28 am)
Re: [PATCH 07/10 final] tracing: Allow events to share the ...
, Frederic Weisbecker
, (Wed May 12, 11:31 am)
Re: [PATCH 08/10 final] tracing: Move print functions into ...
, Frederic Weisbecker
, (Wed May 12, 11:37 am)
Re: [PATCH 00/10 final] tracing: Lowering the footprint of ...
, Frederic Weisbecker
, (Wed May 12, 11:43 am)
Re: [PATCH 00/10 final] tracing: Lowering the footprint of ...
, Masami Hiramatsu
, (Wed May 12, 2:17 pm)
Navigation
Mailing list archives
Recent posts
Popular discussions
linux-kernel
:
Ingo Molnar
Re: [PATCH 0/3] v2 Make hierarchical RCU less IPI-happy and add more tracing
Jeremy Fitzhardinge
Re: Linux 2.6.28.10 and Linux 2.6.29.6 XEN Guest Support Broken x86_64 in BUILD
Nick Piggin
Re: [patch] CFS (Completely Fair Scheduler), v2
Gary Hade
Re: [PATCH 0/5][RFC] Physical PCI slot objects
Dave Johnson
Re: expected behavior of PF_PACKET on NETIF_F_HW_VLAN_RX device?
linux-netdev
:
Arnd Bergmann
Re: 64-bit net_device_stats
Stephens, Allan
RE: [PATCH]: tipc: Fix oops on send prior to entering networked mode
frank.blaschka
[patch 3/5] [PATCH] qeth: support z/VM VSWITCH Port Isolation
Wu Fengguang
Re: [PATCH] dm9601: handle corrupt mac address
David Miller
Re: [PATCH net-2.6.24] Fix refcounting problem with netif_rx_reschedule()
git
:
Junio C Hamano
Re: [PATCH] [RFC] add Message-ID field to log on git-am operation
Junio C Hamano
Re: Handling large files with GIT
Karl
Re: [ANNOUNCE] pg - A patch porcelain for GIT
Josh Triplett
Re: [RFC][PATCH 00/10] Sparse: Git's "make check" target
Pierre Habouzit
Re: [PATCH] git-daemon: more powerful base-path/user-path settings, using formats.
git-commits-head
:
Linux Kernel Mailing List
MIPS: RBTX4939: Fix IOC pin-enable register updating
Linux Kernel Mailing List
regulator: update email address for Liam Girdwood
Linux Kernel Mailing List
[SCSI] ipr: add message to error table
Linux Kernel Mailing List
powerpc/32: Wire up the trampoline code for kdump
Linux Kernel Mailing List
USB: omap_udc: sync with OMAP tree
openbsd-misc
:
Josh Grosse
Re: error : pkg add phpMyAdmin
Brian Candler
Re: OBSD's perspective on SELinux
Jacob Meuser
Re: /dev/audio: Device busy
David Vasek
Re: Inexpensive, low power, "wall wart" computer
William Boshuck
Re: Richard Stallman...
Colocation donated by:
Syndicate