lkml.org 
[lkml]   [2022]   [Oct]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
Subject[mark:arm64/ftrace/per-callsite-ops 1/11] include/linux/ftrace.h:445:20: error: redefinition of 'arch_ftrace_set_direct_caller'
Hi Mark,

FYI, the error/warning was bisected to this commit, please ignore it if it's irrelevant.

tree: https://git.kernel.org/pub/scm/linux/kernel/git/mark/linux.git arm64/ftrace/per-callsite-ops
head: f73350f69ff3e7a2061b0021644bc9846664a3d3
commit: 6262590b79bc8a27439257aebbfc3d1ce45791dd [1/11] ftrace: pass fregs to arch_ftrace_set_direct_caller()
config: x86_64-randconfig-a003-20221024 (attached as .config)
compiler: clang version 14.0.6 (https://github.com/llvm/llvm-project f28c006a5895fc0e329fe15fead81e37457cb1d1)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://git.kernel.org/pub/scm/linux/kernel/git/mark/linux.git/commit/?id=6262590b79bc8a27439257aebbfc3d1ce45791dd
git remote add mark https://git.kernel.org/pub/scm/linux/kernel/git/mark/linux.git
git fetch --no-tags mark arm64/ftrace/per-callsite-ops
git checkout 6262590b79bc8a27439257aebbfc3d1ce45791dd
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=x86_64 prepare

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

In file included from arch/x86/kernel/asm-offsets.c:22:
In file included from arch/x86/kernel/../kvm/vmx/vmx.h:5:
In file included from include/linux/kvm_host.h:32:
>> include/linux/ftrace.h:445:20: error: redefinition of 'arch_ftrace_set_direct_caller'
static inline void arch_ftrace_set_direct_caller(struct ftrace_regs *fregs,
^
arch/x86/include/asm/ftrace.h:69:20: note: previous definition is here
static inline void arch_ftrace_set_direct_caller(struct ftrace_regs *fregs, unsigned long addr)
^
1 error generated.
make[2]: *** [scripts/Makefile.build:118: arch/x86/kernel/asm-offsets.s] Error 1
make[2]: Target 'prepare' not remade because of errors.
make[1]: *** [Makefile:1270: prepare0] Error 2
make[1]: Target 'prepare' not remade because of errors.
make: *** [Makefile:231: __sub-make] Error 2
make: Target 'prepare' not remade because of errors.


vim +/arch_ftrace_set_direct_caller +445 include/linux/ftrace.h

431
432 /*
433 * This must be implemented by the architecture.
434 * It is the way the ftrace direct_ops helper, when called
435 * via ftrace (because there's other callbacks besides the
436 * direct call), can inform the architecture's trampoline that this
437 * routine has a direct caller, and what the caller is.
438 *
439 * For example, in x86, it returns the direct caller
440 * callback function via the regs->orig_ax parameter.
441 * Then in the ftrace trampoline, if this is set, it makes
442 * the return from the trampoline jump to the direct caller
443 * instead of going back to the function it just traced.
444 */
> 445 static inline void arch_ftrace_set_direct_caller(struct ftrace_regs *fregs,
446 unsigned long addr) { }
447 #endif /* CONFIG_DYNAMIC_FTRACE_WITH_DIRECT_CALLS */
448

--
0-DAY CI Kernel Test Service
https://01.org/lkp
[unhandled content-type:application/gzip]
\
 
 \ /
  Last update: 2022-10-25 09:19    [W:0.033 / U:0.300 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site