diff options
author | Torok Edwin <[email protected]> | 2010-03-17 12:07:16 +0200 |
---|---|---|
committer | Ingo Molnar <[email protected]> | 2010-04-02 19:30:03 +0200 |
commit | 257ef9d21f1b008a6c7425544b36641c4325a922 (patch) | |
tree | 4ffda980fe6a93acd24efcc04cd10e130caae4c1 /tools/perf/scripts/python/check-perf-trace.py | |
parent | b38b24ead33417146e051453d04bf60b8d2d7e25 (diff) |
perf, x86: Fix callgraphs of 32-bit processes on 64-bit kernels
When profiling a 32-bit process on a 64-bit kernel, callgraph tracing
stopped after the first function, because it has seen a garbage memory
address (tried to interpret the frame pointer, and return address as a
64-bit pointer).
Fix this by using a struct stack_frame with 32-bit pointers when the
TIF_IA32 flag is set.
Note that TIF_IA32 flag must be used, and not is_compat_task(), because
the latter is only set when the 32-bit process is executing a syscall,
which may not always be the case (when tracing page fault events for
example).
Signed-off-by: Török Edwin <[email protected]>
Signed-off-by: Peter Zijlstra <[email protected]>
Acked-by: Frederic Weisbecker <[email protected]>
Cc: "H. Peter Anvin" <[email protected]>
Cc: Paul Mackerras <[email protected]>
Cc: [email protected]
Cc: [email protected]
LKML-Reference: <[email protected]>
Signed-off-by: Ingo Molnar <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/check-perf-trace.py')
0 files changed, 0 insertions, 0 deletions