aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/cpu
diff options
context:
space:
mode:
authorFrederic Weisbecker <fweisbec@gmail.com>2010-05-20 01:47:21 -0400
committerFrederic Weisbecker <fweisbec@gmail.com>2010-06-08 17:31:27 -0400
commitb0f82b81fe6bbcf78d478071f33e44554726bc81 (patch)
tree6305c095b927f956a791b9dce687cb94a21718e6 /arch/x86/kernel/cpu
parentc9cf4dbb4d9ca715d8fedf13301a53296429abc6 (diff)
perf: Drop the skip argument from perf_arch_fetch_regs_caller
Drop this argument now that we always want to rewind only to the state of the first caller. It means frame pointers are not necessary anymore to reliably get the source of an event. But this also means we need this helper to be a macro now, as an inline function is not an option since we need to know when to provide a default implentation. Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com> Signed-off-by: Paul Mackerras <paulus@samba.org> Cc: David Miller <davem@davemloft.net> Cc: Ingo Molnar <mingo@elte.hu> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'arch/x86/kernel/cpu')
-rw-r--r--arch/x86/kernel/cpu/perf_event.c16
1 files changed, 0 insertions, 16 deletions
diff --git a/arch/x86/kernel/cpu/perf_event.c b/arch/x86/kernel/cpu/perf_event.c
index 9632fb61e8f9..2c075fe573d0 100644
--- a/arch/x86/kernel/cpu/perf_event.c
+++ b/arch/x86/kernel/cpu/perf_event.c
@@ -1706,22 +1706,6 @@ struct perf_callchain_entry *perf_callchain(struct pt_regs *regs)
1706 return entry; 1706 return entry;
1707} 1707}
1708 1708
1709void perf_arch_fetch_caller_regs(struct pt_regs *regs, unsigned long ip, int skip)
1710{
1711 regs->ip = ip;
1712 /*
1713 * perf_arch_fetch_caller_regs adds another call, we need to increment
1714 * the skip level
1715 */
1716 regs->bp = rewind_frame_pointer(skip + 1);
1717 regs->cs = __KERNEL_CS;
1718 /*
1719 * We abuse bit 3 to pass exact information, see perf_misc_flags
1720 * and the comment with PERF_EFLAGS_EXACT.
1721 */
1722 regs->flags = 0;
1723}
1724
1725unsigned long perf_instruction_pointer(struct pt_regs *regs) 1709unsigned long perf_instruction_pointer(struct pt_regs *regs)
1726{ 1710{
1727 unsigned long ip; 1711 unsigned long ip;