1
linux/tools/perf/util
Tom Zanussi 8dc58101f2 perf: Add pipe-specific header read/write and event processing code
This patch makes several changes to allow the perf event stream
to be sent and received over a pipe:

- adds pipe-specific versions of the header read/write code

- adds pipe-specific version of the event processing code

- adds a range of event types to be used for header or other
  pseudo events, above the range used by the kernel

- checks the return value of event handlers, which they can use
  to skip over large events during event processing rather than actually
  reading them into event objects.

- unifies the multiple do_read() functions and updates its
  users.

Note that none of these changes affect the existing perf data
file format or processing - this code only comes into play if
perf output is sent to stdout (or is read from stdin).

Signed-off-by: Tom Zanussi <tzanussi@gmail.com>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Cc: fweisbec@gmail.com
Cc: rostedt@goodmis.org
Cc: k-keiichi@bx.jp.nec.com
Cc: acme@ghostprotocols.net
LKML-Reference: <1270184365-8281-2-git-send-email-tzanussi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2010-04-14 11:56:05 +02:00
..
include perf tools: Move __used from perf.h to linux/compiler.h 2010-03-26 08:52:59 +01:00
scripting-engines perf/scripts: Tuple was set from long in both branches in python_process_event() 2010-04-02 21:32:16 +02:00
abspath.c perf: Enable more compiler warnings 2009-08-16 10:47:47 +02:00
alias.c perf_counter tools: Add more warnings and fix/annotate them 2009-07-01 12:49:48 +02:00
build-id.c perf build-id: Move the routine to find DSOs with hits to the lib 2010-02-04 09:33:26 +01:00
build-id.h perf build-id: Move the routine to find DSOs with hits to the lib 2010-02-04 09:33:26 +01:00
cache.h perf newt: Properly restore the screen when error exiting 2010-03-22 18:47:34 +01:00
callchain.c perf callchains: Store the map together with the symbol 2010-03-26 08:52:57 +01:00
callchain.h perf callchains: Store the map together with the symbol 2010-03-26 08:52:57 +01:00
color.c perf hist: Replace ->print() routines by ->snprintf() equivalents 2010-04-02 16:28:15 -03:00
color.h perf hist: Replace ->print() routines by ->snprintf() equivalents 2010-04-02 16:28:15 -03:00
config.c perf: Enable more compiler warnings 2009-08-16 10:47:47 +02:00
cpumap.c perf tools: Fix sparse CPU numbering related bugs 2010-03-11 13:36:53 +01:00
cpumap.h perf tools: Fix sparse CPU numbering related bugs 2010-03-11 13:36:53 +01:00
ctype.c perf tools: Move graph_line and graph_dotted_line from top 2009-11-23 21:55:20 +01:00
debug.c perf: Fix endianness argument compatibility with OPT_BOOLEAN() and introduce OPT_INCR() 2010-04-14 11:26:44 +02:00
debug.h perf: Fix endianness argument compatibility with OPT_BOOLEAN() and introduce OPT_INCR() 2010-04-14 11:26:44 +02:00
debugfs.c perf trace: Clean up find_debugfs() 2009-12-28 10:36:36 +01:00
debugfs.h perf tools: Mount debugfs automatically 2009-12-28 10:36:36 +01:00
environment.c
event.c perf symbols: Fill in pgoff in mmap synthesized events 2010-04-03 10:20:31 -03:00
event.h perf: Add pipe-specific header read/write and event processing code 2010-04-14 11:56:05 +02:00
exec_cmd.c perf: Enable more compiler warnings 2009-08-16 10:47:47 +02:00
exec_cmd.h perf tools: Protect header files with a consistent style 2009-09-24 21:27:51 +02:00
generate-cmdlist.sh
header.c perf: Add pipe-specific header read/write and event processing code 2010-04-14 11:56:05 +02:00
header.h perf: Add pipe-specific header read/write and event processing code 2010-04-14 11:56:05 +02:00
help.c perf_counter tools: Add more warnings and fix/annotate them 2009-07-01 12:49:48 +02:00
help.h perf tools: Protect header files with a consistent style 2009-09-24 21:27:51 +02:00
hist.c perf hist: Only allocate callchain_node if processing callchains 2010-04-02 16:28:28 -03:00
hist.h perf hist: Replace ->print() routines by ->snprintf() equivalents 2010-04-02 16:28:15 -03:00
levenshtein.c
levenshtein.h perf tools: Protect header files with a consistent style 2009-09-24 21:27:51 +02:00
map.c perf symbols: map_groups__find_symbol must return the map too 2010-04-02 16:27:43 -03:00
map.h perf symbols: map_groups__find_symbol must return the map too 2010-04-02 16:27:43 -03:00
newt.c perf TUI: Move "Yes" button to before "No" 2010-04-08 11:34:25 -03:00
pager.c perf_counter tools: Remove dead code 2009-06-27 06:06:39 +02:00
parse-events.c perf symbols: Move hex2u64 and strxfrchar to symbol.c 2010-03-26 08:52:59 +01:00
parse-events.h perf trace: Add filter Suppport 2009-10-15 11:35:23 +02:00
parse-options.c perf: Fix endianness argument compatibility with OPT_BOOLEAN() and introduce OPT_INCR() 2010-04-14 11:26:44 +02:00
parse-options.h perf: Fix endianness argument compatibility with OPT_BOOLEAN() and introduce OPT_INCR() 2010-04-14 11:26:44 +02:00
path.c perf: Enable more compiler warnings 2009-08-16 10:47:47 +02:00
PERF-VERSION-GEN perf tools: Allow specifying O= to build files in a separate directory 2010-04-02 16:28:03 -03:00
probe-event.c perf probe: Cleanup debuginfo related code 2010-03-22 18:47:35 +01:00
probe-event.h perf tools: Reorganize some structs to save space 2010-04-08 11:34:26 -03:00
probe-finder.c perf probe: Fix to close dwarf when failing to analyze it 2010-04-02 19:35:44 +02:00
probe-finder.h perf tools: Reorganize some structs to save space 2010-04-08 11:34:26 -03:00
quote.c perf: Fix read buffer overflow 2009-08-04 11:09:56 +02:00
quote.h perf tools: Protect header files with a consistent style 2009-09-24 21:27:51 +02:00
run-command.c perf: Enable more compiler warnings 2009-08-16 10:47:47 +02:00
run-command.h perf tools: Protect header files with a consistent style 2009-09-24 21:27:51 +02:00
session.c perf: Add pipe-specific header read/write and event processing code 2010-04-14 11:56:05 +02:00
session.h perf: Add pipe-specific header read/write and event processing code 2010-04-14 11:56:05 +02:00
sigchain.c
sigchain.h perf tools: Protect header files with a consistent style 2009-09-24 21:27:51 +02:00
sort.c perf tools: sort_dimension__add shouldn't die 2010-04-02 16:28:35 -03:00
sort.h perf TUI: Add a "Zoom into COMM(PID) thread" and reverse operations 2010-04-03 22:45:00 -03:00
strbuf.c perf_counter tools: Add more warnings and fix/annotate them 2009-07-01 12:49:48 +02:00
strbuf.h perf tools: Protect header files with a consistent style 2009-09-24 21:27:51 +02:00
string.c perf: Swap inclusion order of util.h and string.h in util/string.c 2010-04-04 16:40:42 +02:00
strlist.c perf probe: Fix --del to update current event list 2009-12-15 20:22:01 +01:00
strlist.h perf tools: Add for_each macros for strlist 2009-12-15 20:22:02 +01:00
svghelper.c perf timechart: Improve the visual appearance of scheduler delays 2009-10-20 03:39:21 +02:00
svghelper.h perf tools: Protect header files with a consistent style 2009-09-24 21:27:51 +02:00
symbol.c perf symbols: Move hex2u64 and strxfrchar to symbol.c 2010-03-26 08:52:59 +01:00
symbol.h perf symbols: Move hex2u64 and strxfrchar to symbol.c 2010-03-26 08:52:59 +01:00
thread.c perf symbols: Move more map_groups methods to map.c 2010-04-02 16:27:39 -03:00
thread.h perf symbols: Move map related routines to map.c 2010-03-26 08:52:58 +01:00
trace-event-info.c perf tools: Convert getpagesize() uses to sysconf(_SC_GETPAGESIZE) 2010-01-16 10:58:46 +01:00
trace-event-parse.c perf: Fix endianness argument compatibility with OPT_BOOLEAN() and introduce OPT_INCR() 2010-04-14 11:26:44 +02:00
trace-event-read.c perf tools: Clean up O_LARGEFILE et al usage 2010-02-04 10:03:03 +01:00
trace-event-scripting.c perf/scripts: Add Python scripting engine 2010-02-25 04:07:29 +01:00
trace-event.h perf: Fix endianness argument compatibility with OPT_BOOLEAN() and introduce OPT_INCR() 2010-04-14 11:26:44 +02:00
types.h perf tools: Protect header files with a consistent style 2009-09-24 21:27:51 +02:00
usage.c perf top: Fall back to cpu-clock-tick hrtimer sampling if no cycle counter available 2009-06-07 17:31:52 +02:00
util.c perf: Fix implicit declaration of getline in util.c 2010-01-17 07:53:09 +01:00
util.h perf tools: Move the prototypes in util/string.h to util.h 2010-04-03 10:19:26 -03:00
values.c perf: Fix memory leak: counterwidth 2010-01-13 10:09:15 +01:00
values.h perf tools: Protect header files with a consistent style 2009-09-24 21:27:51 +02:00
wrapper.c perf tools: Remove unused wrapper routines 2009-11-24 16:37:03 +01:00