Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394...
[pandora-kernel.git] / arch / s390 / include / asm / ftrace.h
1 #ifndef _ASM_S390_FTRACE_H
2 #define _ASM_S390_FTRACE_H
3
4 #ifndef __ASSEMBLY__
5
6 extern void _mcount(void);
7 extern unsigned long ftrace_dyn_func;
8
9 struct dyn_arch_ftrace { };
10
11 #define MCOUNT_ADDR ((long)_mcount)
12
13 #ifdef CONFIG_64BIT
14 #define MCOUNT_OFFSET_RET 18
15 #define MCOUNT_INSN_SIZE  24
16 #define MCOUNT_OFFSET     14
17 #else
18 #define MCOUNT_OFFSET_RET 26
19 #define MCOUNT_INSN_SIZE  30
20 #define MCOUNT_OFFSET      8
21 #endif
22
23 static inline unsigned long ftrace_call_adjust(unsigned long addr)
24 {
25         return addr - MCOUNT_OFFSET;
26 }
27
28 #endif /* __ASSEMBLY__ */
29 #endif /* _ASM_S390_FTRACE_H */