From: tip-bot for Nobuhiro Iwamatsu on
Commit-ID: 5cfaf214856eb934759ae500a0b812dd06a00bd9
Author: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj(a)>
AuthorDate: Wed, 23 Jun 2010 09:17:53 +0900
Committer: Frederic Weisbecker <fweisbec(a)>
CommitDate: Thu, 24 Jun 2010 23:34:58 +0200

perf: Fix argument of perf_arch_fetch_caller_regs

"struct regs" was set to argument of perf_arch_fetch_caller_regs
off-case. It should be "struct pt_regs".

This fixes various build errors in archs that have CONFIG_PERF_EVENTS=y
but no overriden implementation of perf_arch_fetch_caller_regs.

cc1: warnings being treated as errors
In file included from include/linux/ftrace_event.h:8,
from include/trace/syscall.h:6,
from include/linux/syscalls.h:75,
from arch/sh/kernel/sys_sh32.c:9:
include/linux/perf_event.h:937: error: 'struct regs' declared inside parameter list
include/linux/perf_event.h:937: error: its scope is only this definition or declaration, which is probably not what you want
include/linux/perf_event.h: In function 'perf_fetch_caller_regs':
include/linux/perf_event.h:952: error: passing argument 1 of 'perf_arch_fetch_caller_regs' from incompatible pointer type

Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj(a)>
Reported-by: Stephen Rothwell <sfr(a)>
Cc: Paul Mackerras <paulus(a)>
Cc: David Miller <davem(a)>
Cc: Ingo Molnar <mingo(a)>
Cc: Peter Zijlstra <a.p.zijlstra(a)>
Cc: Arnaldo Carvalho de Melo <acme(a)>
LKML-Reference: <AANLkTinKKFKEBQrZ3Hkj-XCaMwaTqulb-XnFzqEYiFRr(a)>
Signed-off-by: Frederic Weisbecker <fweisbec(a)>
include/linux/perf_event.h | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/include/linux/perf_event.h b/include/linux/perf_event.h
index 0dd5f8a..937495c 100644
--- a/include/linux/perf_event.h
+++ b/include/linux/perf_event.h
@@ -936,7 +936,7 @@ extern void __perf_sw_event(u32, u64, int, struct pt_regs *, u64);

#ifndef perf_arch_fetch_caller_regs
static inline void
-perf_arch_fetch_caller_regs(struct regs *regs, unsigned long ip) { }
+perf_arch_fetch_caller_regs(struct pt_regs *regs, unsigned long ip) { }

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)
More majordomo info at
Please read the FAQ at