Jiri Olsa
8e303f20f4
perf tools: Fix raw sample reading
...
Wrong pointer is being passed for raw data sanity checking, when parsing
sample event.
This ends up with invalid event and perf record being stuck in
__perf_session__process_events function during processing build IDs
(process_buildids function).
Following command hangs up in my setup:
./perf record -e raw_syscalls:sys_enter ls
The fix is to use proper pointer to the raw data instead of the 'u'
union.
Reviewed-by: David Ahern <dsahern@gmail.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Eric Dumazet <eric.dumazet@gmail.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Neil Horman <nhorman@tuxdriver.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Steven Rostedt <rostedt@goodmis.org>
Link: http://lkml.kernel.org/r/1317308709-9474-2-git-send-email-jolsa@redhat.com
Signed-off-by: Jiri Olsa <jolsa@redhat.com>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2011-09-29 16:29:53 -03:00
..
include
perf tools: Fix build against newer glibc
2011-08-18 07:24:53 -03:00
scripting-engines
perf session: Pass evsel in event_ops->sample()
2011-03-23 19:28:58 -03:00
ui
perf top browser: Remove spurious helpline update
2011-08-10 12:42:26 -03:00
abspath.c
perf tools: Remove some unused functions
2010-05-18 23:03:35 -03:00
alias.c
perf_counter tools: Add more warnings and fix/annotate them
2009-07-01 12:49:48 +02:00
annotate.c
perf symbols: Rename dso->origin to dso->symtab_type
2011-03-11 13:28:45 -03:00
annotate.h
perf top: Live TUI Annotation
2011-02-22 12:02:07 -03:00
bitmap.c
perf tools: Don't use code surrounded by __KERNEL__
2010-05-02 12:00:44 -03:00
build-id.c
perf session: Pass evsel in event_ops->sample()
2011-03-23 19:28:58 -03:00
build-id.h
perf annotate: Use build-ids to find the right DSO
2010-05-20 12:15:33 -03:00
cache.h
perf tools: Don't fallback to setup_pager unconditionally
2011-01-31 18:08:39 -02:00
callchain.c
perf tools: Kill event_t typedef, use 'union perf_event' instead
2011-01-29 16:25:37 -02:00
callchain.h
perf tools: Add inverted call graph report support.
2011-06-30 00:24:30 +02:00
cgroup.c
perf: Fix a build error with some GCC versions
2011-04-08 17:40:21 +02:00
cgroup.h
perf tool: Add cgroup support
2011-02-16 13:30:48 +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 tools: Check $HOME/.perfconfig ownership
2011-08-09 12:42:13 -03:00
cpumap.c
perf tools: Add missing cpu_map__delete()
2011-01-22 19:56:30 -02:00
cpumap.h
perf tools: Add missing cpu_map__delete()
2011-01-22 19:56:30 -02: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 tools: Fixup exit path when not able to open events
2011-03-29 13:40:27 -03:00
debug.h
perf tools: Fixup exit path when not able to open events
2011-03-29 13:40:27 -03: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
dwarf-aux.c
perf probe: Filter out redundant inline-instances
2011-08-12 09:34:35 -03:00
dwarf-aux.h
perf probe: Search concrete out-of-line instances
2011-08-12 09:32:10 -03:00
environment.c
event.c
perf symbols: Synthesize anonymous mmap events
2011-09-23 14:37:06 -03:00
event.h
perf tool: Fix endianness handling of u32 data in samples
2011-09-23 14:37:27 -03:00
evlist.c
perf record: Create events initially disabled and enable after init
2011-09-23 14:36:53 -03:00
evlist.h
perf record: Create events initially disabled and enable after init
2011-09-23 14:36:53 -03:00
evsel.c
perf tools: Fix raw sample reading
2011-09-29 16:29:53 -03:00
evsel.h
perf evlist: Don't die if sample_{id_all|type} is invalid
2011-06-03 10:07:52 -03:00
exec_cmd.c
perf tools: Makefile: Remove various and sundry cruft
2011-02-18 07:43:06 -02:00
exec_cmd.h
perf tools: Remove some unused functions
2010-05-18 23:03:35 -03:00
generate-cmdlist.sh
header.c
perf report: Use properly build_id kernel binaries
2011-08-11 08:58:03 -03:00
header.h
perf tools: Move evlist sample helpers to evlist area
2011-05-22 03:12:29 +02:00
help.c
perf tools: Remove some unused functions
2010-05-18 23:03:35 -03:00
help.h
perf tools: Protect header files with a consistent style
2009-09-24 21:27:51 +02:00
hist.c
perf tools: Don't display ignored entries on stdio ui
2011-06-30 00:26:33 +02:00
hist.h
perf session: Pass evsel in event_ops->sample()
2011-03-23 19:28:58 -03:00
hweight.c
perf tools: Don't use code surrounded by __KERNEL__
2010-05-02 12:00:44 -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 tools: Fix 64 bit integer format strings
2011-01-22 23:41:57 -02:00
map.h
perf probe: Add basic module support
2010-10-21 16:11:44 -02:00
pager.c
perf_counter tools: Remove dead code
2009-06-27 06:06:39 +02:00
parse-events.c
perf tools: Fix error handling of unknown events
2011-08-18 07:21:13 -03:00
parse-events.h
perf tools: De-opt the parse_events function
2011-07-21 10:41:11 +02:00
parse-options.c
perf options: Type check all the remaining OPT_ variants
2010-05-17 16:22:41 -03:00
parse-options.h
perf options: add OPT_CALLBACK_DEFAULT_NOOPT
2010-12-06 15:33:29 -02:00
path.c
perf tools: add test for strlcpy()
2010-08-21 11:22:47 -03:00
PERF-VERSION-GEN
perf: clear out make flags when calling kernel make kernelver
2011-06-15 22:12:55 +02:00
probe-event.c
perf probe: Fix coredump introduced by probe module option
2011-08-08 09:35:41 -03:00
probe-event.h
perf probe: Add probed module in front of function
2011-07-15 16:19:08 -04:00
probe-finder.c
perf probe: Fix regression of variable finder
2011-09-23 14:33:19 -03:00
probe-finder.h
perf probe: Fix to search local variables in appropriate scope
2011-08-12 09:28:45 -03:00
pstack.c
perf newt: Make <- zoom out filters
2010-05-14 20:05:21 -03:00
pstack.h
perf ui: Move hists browser to util/ui/browsers/
2010-08-10 16:11:08 -03:00
python.c
perf python: Add missing perf_event__parse_sample 'swapped' parm
2011-09-23 15:38:53 -03:00
quote.c
perf tools: Remove some unused functions
2010-05-18 23:03:35 -03:00
quote.h
perf tools: Remove some unused functions
2010-05-18 23:03:35 -03:00
run-command.c
perf tools: Remove some unused functions
2010-05-18 23:03:35 -03:00
run-command.h
perf tools: Remove some unused functions
2010-05-18 23:03:35 -03:00
session.c
perf script: Fix display of IP address for non-callchain path
2011-07-21 10:09:28 +02:00
session.h
perf tool: Fix endianness handling of u32 data in samples
2011-09-23 14:37:27 -03:00
setup.py
perf tools: Add support to install perf python extension
2011-08-08 12:54:26 -03:00
sigchain.c
perf tools: Remove some unused functions
2010-05-18 23:03:35 -03:00
sigchain.h
perf tools: Remove some unused functions
2010-05-18 23:03:35 -03:00
sort.c
perf sort: Fix symbol sort output by separating unresolved samples by type
2011-09-23 14:37:17 -03:00
sort.h
perf tools: Remove sort print helpers declarations
2011-06-30 00:26:19 +02:00
strbuf.c
perf tools: Remove some unused functions
2010-05-18 23:03:35 -03:00
strbuf.h
perf tools: Remove some unused functions
2010-05-18 23:03:35 -03:00
strfilter.c
perf: Fix missing strndup declaration
2011-03-04 01:17:18 +01:00
strfilter.h
perf tools: Add strfilter for general purpose string filter
2011-01-28 09:19:38 -02:00
string.c
perf probe: Move strtailcmp to string.c
2011-07-15 16:00:47 -04: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: Fix black idle boxes in the title
2011-02-28 08:56:14 +01:00
svghelper.h
perf tools: Protect header files with a consistent style
2009-09-24 21:27:51 +02:00
symbol.c
perf symbols: Fix issue with binaries using 16-bytes buildids (v2)
2011-09-23 14:37:41 -03:00
symbol.h
perf report: Use properly build_id kernel binaries
2011-08-11 08:58:03 -03:00
thread.c
perf threads: Move thread_map to separate file
2011-01-24 10:59:00 -02:00
thread.h
perf threads: Move thread_map to separate file
2011-01-24 10:59:00 -02:00
thread_map.c
perf threads: Move thread_map to separate file
2011-01-24 10:59:00 -02:00
thread_map.h
perf threads: Move thread_map to separate file
2011-01-24 10:59:00 -02:00
top.c
perf top: Remove redundant syme->origin field
2011-03-11 13:28:45 -03:00
top.h
perf symbol: Move sym_entry->skip to symbol->ignore
2011-03-11 13:36:01 -03:00
trace-event-info.c
perf: Robustify proc and debugfs file recording
2011-07-14 15:53:01 -04:00
trace-event-parse.c
rcu: Use softirq to address performance regression
2011-06-14 15:25:39 -07:00
trace-event-read.c
perf: Use read() instead of lseek() in trace_event_read.c:skip()
2010-05-20 08:37:17 +02:00
trace-event-scripting.c
perf session: Pass evsel in event_ops->sample()
2011-03-23 19:28:58 -03:00
trace-event.h
perf session: Pass evsel in event_ops->sample()
2011-03-23 19:28:58 -03:00
types.h
perf tools: Fix 64 bit integer format strings
2011-01-22 23:41:57 -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 util: Move do_read from session to util
2011-01-03 16:50:55 -02:00
util.h
perf probe: Move strtailcmp to string.c
2011-07-15 16:00:47 -04:00
values.c
perf tools: Fix 64 bit integer format strings
2011-01-22 23:41:57 -02: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 xstrndup, xmalloc, xzalloc
2010-05-18 23:05:28 -03:00
xyarray.c
perf tools: Introduce event selectors
2011-01-03 16:39:04 -02:00
xyarray.h
perf tools: Introduce event selectors
2011-01-03 16:39:04 -02:00