diff options
author | Yan, Zheng <[email protected]> | 2014-11-04 21:56:11 -0500 |
---|---|---|
committer | Ingo Molnar <[email protected]> | 2015-02-18 17:16:14 +0100 |
commit | aa54ae9b87b83af7edabcc34a299e7e014609af4 (patch) | |
tree | 97f9dcd94f98cf444b2fa498e19e3c5cb20c238c /scripts/gdb/linux/utils.py | |
parent | 2c70d0086e4e9e2440f0f78098090f32bde14277 (diff) |
perf/x86/intel: Discard zero length call entries in LBR call stack
"Zero length call" uses the attribute of the call instruction to push
the immediate instruction pointer on to the stack and then pops off
that address into a register. This is accomplished without any matching
return instruction. It confuses the hardware and make the recorded call
stack incorrect.
We can partially resolve this issue by: decode call instructions and
discard any zero length call entry in the LBR stack.
Signed-off-by: Yan, Zheng <[email protected]>
Signed-off-by: Kan Liang <[email protected]>
Signed-off-by: Peter Zijlstra (Intel) <[email protected]>
Cc: Arnaldo Carvalho de Melo <[email protected]>
Cc: Linus Torvalds <[email protected]>
Cc: Paul Mackerras <[email protected]>
Cc: [email protected]
Cc: [email protected]
Link: http://lkml.kernel.org/r/[email protected]
Signed-off-by: Ingo Molnar <[email protected]>
Diffstat (limited to 'scripts/gdb/linux/utils.py')
0 files changed, 0 insertions, 0 deletions