1#ifndef _ASM_S390_FTRACE_H 2#define _ASM_S390_FTRACE_H 3 4#ifndef __ASSEMBLY__ 5 6extern void _mcount(void); 7extern unsigned long ftrace_dyn_func; 8 9struct 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 23static 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 */ 30