[PATCH V2] riscv: ftrace: Fix the logic issue in DYNAMIC_FTRACE selection

Miao Chen chenmiao.ku at gmail.com
Thu Jul 10 05:34:45 PDT 2025


Hello Alex,

Sure, I'll checkout it. Btw, this is my first commit, so can u tell
how to reproduce failed case? Using the reproduce and .config.gz gived
by build-bot?

Thanks,

Chen Miao

Alexandre Ghiti <alex at ghiti.fr> 于2025年7月10日周四 19:53写道:
>
> Hi ChenMiao,
>
> On 7/9/25 03:08, kernel test robot wrote:
> > Hi ChenMiao,
> >
> > kernel test robot noticed the following build errors:
> >
> > [auto build test ERROR on fda589c286040d9ba2d72a0eaf0a13945fc48026]
> >
> > url:    https://github.com/intel-lab-lkp/linux/commits/ChenMiao/riscv-ftrace-Fix-the-logic-issue-in-DYNAMIC_FTRACE-selection/20250706-231907
> > base:   fda589c286040d9ba2d72a0eaf0a13945fc48026
> > patch link:    https://lore.kernel.org/r/20250706151830.25091-1-chenmiao.ku%40gmail.com
> > patch subject: [PATCH V2] riscv: ftrace: Fix the logic issue in DYNAMIC_FTRACE selection
> > :::::: branch date: 2 days ago
> > :::::: commit date: 2 days ago
> > config: riscv-randconfig-r112-20250708 (attached as .config)
> > compiler: clang version 19.1.7 (https://github.com/llvm/llvm-project cd708029e0b2869e80abe31ddb175f7c35361f90)
> > reproduce: (attached as reproduce)
> >
> > If you fix the issue in a separate patch/commit (i.e. not just a new version of
> > the same patch/commit), kindly add following tags
> > | Reported-by: kernel test robot <lkp at intel.com>
> > | Closes: https://lore.kernel.org/oe-kbuild-all/202507090650.YGY56SIA-lkp@intel.com/
> >
> > All errors (new ones prefixed by >>):
> >
> >>> <instantiation>:1:14: error: operand must be a symbol with %lo/%pcrel_lo/%tprel_lo modifier or an integer in the range [-2048, 2047]
> >     addi sp, sp, -FREGS_SIZE_ON_STACK
> >                  ^
> >     arch/riscv/kernel/mcount-dyn.S:185:2: note: while in macro instantiation
> >      SAVE_ABI_REGS
> >      ^
> >>> <instantiation>:2:18: error: unexpected token
> >      sw t0, FREGS_EPC(sp)
> >                      ^
> >     arch/riscv/kernel/mcount-dyn.S:185:2: note: while in macro instantiation
> >      SAVE_ABI_REGS
> >      ^
> >     <instantiation>:3:17: error: unexpected token
> >      sw x1, FREGS_RA(sp)
> >                     ^
> >     arch/riscv/kernel/mcount-dyn.S:185:2: note: while in macro instantiation
> >      SAVE_ABI_REGS
> >      ^
> >     <instantiation>:7:17: error: unexpected token
> >      sw x6, FREGS_T1(sp)
> >                     ^
> >     arch/riscv/kernel/mcount-dyn.S:185:2: note: while in macro instantiation
> >      SAVE_ABI_REGS
> >      ^
> >     <instantiation>:9:17: error: unexpected token
> >      sw x7, FREGS_T2(sp)
> >                     ^
> >     arch/riscv/kernel/mcount-dyn.S:185:2: note: while in macro instantiation
> >      SAVE_ABI_REGS
> >      ^
> >     <instantiation>:10:18: error: unexpected token
> >      sw x28, FREGS_T3(sp)
> >                      ^
> >     arch/riscv/kernel/mcount-dyn.S:185:2: note: while in macro instantiation
> >      SAVE_ABI_REGS
> >      ^
> >     <instantiation>:11:18: error: unexpected token
> >      sw x29, FREGS_T4(sp)
> >                      ^
> >     arch/riscv/kernel/mcount-dyn.S:185:2: note: while in macro instantiation
> >      SAVE_ABI_REGS
> >      ^
> >     <instantiation>:12:18: error: unexpected token
> >      sw x30, FREGS_T5(sp)
> >                      ^
> >     arch/riscv/kernel/mcount-dyn.S:185:2: note: while in macro instantiation
> >      SAVE_ABI_REGS
> >      ^
> >     <instantiation>:13:18: error: unexpected token
> >      sw x31, FREGS_T6(sp)
> >                      ^
> >     arch/riscv/kernel/mcount-dyn.S:185:2: note: while in macro instantiation
> >      SAVE_ABI_REGS
> >      ^
> >     <instantiation>:16:18: error: unexpected token
> >      sw x10, FREGS_A0(sp)
> >                      ^
> >     arch/riscv/kernel/mcount-dyn.S:185:2: note: while in macro instantiation
> >      SAVE_ABI_REGS
> >      ^
> >     <instantiation>:17:18: error: unexpected token
> >      sw x11, FREGS_A1(sp)
> >                      ^
> >     arch/riscv/kernel/mcount-dyn.S:185:2: note: while in macro instantiation
> >      SAVE_ABI_REGS
> >      ^
> >     <instantiation>:18:18: error: unexpected token
> >      sw x12, FREGS_A2(sp)
> >                      ^
> >     arch/riscv/kernel/mcount-dyn.S:185:2: note: while in macro instantiation
> >      SAVE_ABI_REGS
> >      ^
> >     <instantiation>:19:18: error: unexpected token
> >      sw x13, FREGS_A3(sp)
> >                      ^
> >     arch/riscv/kernel/mcount-dyn.S:185:2: note: while in macro instantiation
> >      SAVE_ABI_REGS
> >      ^
> >     <instantiation>:20:18: error: unexpected token
> >      sw x14, FREGS_A4(sp)
> >                      ^
> >     arch/riscv/kernel/mcount-dyn.S:185:2: note: while in macro instantiation
> >      SAVE_ABI_REGS
> >      ^
> >     <instantiation>:21:18: error: unexpected token
> >      sw x15, FREGS_A5(sp)
> >                      ^
> >     arch/riscv/kernel/mcount-dyn.S:185:2: note: while in macro instantiation
> >      SAVE_ABI_REGS
> >      ^
> >     <instantiation>:22:18: error: unexpected token
> >      sw x16, FREGS_A6(sp)
> >                      ^
> >     arch/riscv/kernel/mcount-dyn.S:185:2: note: while in macro instantiation
> >      SAVE_ABI_REGS
> >      ^
> >     <instantiation>:23:18: error: unexpected token
> >      sw x17, FREGS_A7(sp)
> >                      ^
> >     arch/riscv/kernel/mcount-dyn.S:185:2: note: while in macro instantiation
> >      SAVE_ABI_REGS
> >      ^
> >     <instantiation>:25:15: error: operand must be a symbol with %lo/%pcrel_lo/%tprel_lo modifier or an integer in the range [-2048, 2047]
> >      addi a0, a0, FREGS_SIZE_ON_STACK
> >                   ^
> >     arch/riscv/kernel/mcount-dyn.S:185:2: note: while in macro instantiation
> >      SAVE_ABI_REGS
> >
> > Kconfig warnings: (for reference only)
> >     WARNING: unmet direct dependencies detected for DYNAMIC_FTRACE
> >     Depends on [n]: FTRACE [=y] && FUNCTION_TRACER [=y] && HAVE_DYNAMIC_FTRACE [=n]
> >     Selected by [y]:
> >     - RISCV [=y] && FUNCTION_TRACER [=y]
>
> To avoid that, we should check HAVE_DYNAMIC_FTRACE too:
>
> select DYNAMIC_FTRACE if FUNCTION_TRACER && HAVE_DYNAMIC_FTRACE
>
> That fixes the build error for me. Can you send a v3 with this change?
>
> Thanks,
>
> Alex
>
>
> >



More information about the linux-riscv mailing list