cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

ftrace.h (748B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2#ifndef _ASM_IA64_FTRACE_H
      3#define _ASM_IA64_FTRACE_H
      4
      5#ifdef CONFIG_FUNCTION_TRACER
      6#define MCOUNT_INSN_SIZE        32 /* sizeof mcount call */
      7
      8#ifndef __ASSEMBLY__
      9extern void _mcount(unsigned long pfs, unsigned long r1, unsigned long b0, unsigned long r0);
     10#define mcount _mcount
     11
     12/* In IA64, MCOUNT_ADDR is set in link time, so it's not a constant at compile time */
     13#define MCOUNT_ADDR (((struct fnptr *)mcount)->ip)
     14#define FTRACE_ADDR (((struct fnptr *)ftrace_caller)->ip)
     15
     16static inline unsigned long ftrace_call_adjust(unsigned long addr)
     17{
     18	/* second bundle, insn 2 */
     19	return addr - 0x12;
     20}
     21
     22struct dyn_arch_ftrace {
     23};
     24#endif
     25
     26#endif /* CONFIG_FUNCTION_TRACER */
     27
     28#endif /* _ASM_IA64_FTRACE_H */