Hi Nam, kernel test robot noticed the following build errors:
[auto build test ERROR on trace/for-next] [also build test ERROR on linus/master next-20250806] [cannot apply to tip/sched/core v6.16] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Nam-Cao/rv-ltl-Prepare-for-other-monitor-types/20250806-160342 base: https://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace for-next patch link: https://lore.kernel.org/r/88fdbeb3f2ecf3a6259f3ee8636ae5b21fa6b72d.1754466623.git.namcao%40linutronix.de patch subject: [PATCH v2 5/5] rv: Add rts monitor config: sh-allmodconfig (https://download.01.org/0day-ci/archive/20250807/[email protected]/config) compiler: sh4-linux-gcc (GCC) 15.1.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250807/[email protected]/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 <[email protected]> | Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/ All errors (new ones prefixed by >>): In file included from include/asm-generic/percpu.h:7, from ./arch/sh/include/generated/asm/percpu.h:1, from include/linux/irqflags.h:19, from arch/sh/include/asm/cmpxchg-irq.h:5, from arch/sh/include/asm/cmpxchg.h:21, from arch/sh/include/asm/atomic.h:19, from include/linux/atomic.h:7, from include/asm-generic/bitops/atomic.h:5, from arch/sh/include/asm/bitops.h:23, from include/linux/bitops.h:67, from include/linux/kernel.h:23, from include/linux/interrupt.h:6, from include/linux/trace_recursion.h:5, from include/linux/ftrace.h:10, from kernel/trace/rv/monitors/rts/rts.c:2: include/rv/ltl_monitor.h: In function 'ltl_get_monitor': >> include/linux/percpu-defs.h:90:40: error: section attribute cannot be >> specified for local variables 90 | extern __PCPU_DUMMY_ATTRS char __pcpu_unique_##name; \ | ^~~~~~~~~~~~~~ include/linux/percpu-defs.h:113:9: note: in expansion of macro 'DEFINE_PER_CPU_SECTION' 113 | DEFINE_PER_CPU_SECTION(type, name, "") | ^~~~~~~~~~~~~~~~~~~~~~ include/rv/ltl_monitor.h:69:16: note: in expansion of macro 'DEFINE_PER_CPU' 69 | static DEFINE_PER_CPU(struct ltl_monitor, ltl_monitor); | ^~~~~~~~~~~~~~ include/linux/percpu-defs.h:91:33: error: section attribute cannot be specified for local variables 91 | __PCPU_DUMMY_ATTRS char __pcpu_unique_##name; \ | ^~~~~~~~~~~~~~ include/linux/percpu-defs.h:113:9: note: in expansion of macro 'DEFINE_PER_CPU_SECTION' 113 | DEFINE_PER_CPU_SECTION(type, name, "") | ^~~~~~~~~~~~~~~~~~~~~~ include/rv/ltl_monitor.h:69:16: note: in expansion of macro 'DEFINE_PER_CPU' 69 | static DEFINE_PER_CPU(struct ltl_monitor, ltl_monitor); | ^~~~~~~~~~~~~~ >> include/linux/percpu-defs.h:91:33: error: declaration of >> '__pcpu_unique_ltl_monitor' with no linkage follows extern declaration 91 | __PCPU_DUMMY_ATTRS char __pcpu_unique_##name; \ | ^~~~~~~~~~~~~~ include/linux/percpu-defs.h:113:9: note: in expansion of macro 'DEFINE_PER_CPU_SECTION' 113 | DEFINE_PER_CPU_SECTION(type, name, "") | ^~~~~~~~~~~~~~~~~~~~~~ include/rv/ltl_monitor.h:69:16: note: in expansion of macro 'DEFINE_PER_CPU' 69 | static DEFINE_PER_CPU(struct ltl_monitor, ltl_monitor); | ^~~~~~~~~~~~~~ include/linux/percpu-defs.h:90:40: note: previous declaration of '__pcpu_unique_ltl_monitor' with type 'char' 90 | extern __PCPU_DUMMY_ATTRS char __pcpu_unique_##name; \ | ^~~~~~~~~~~~~~ include/linux/percpu-defs.h:113:9: note: in expansion of macro 'DEFINE_PER_CPU_SECTION' 113 | DEFINE_PER_CPU_SECTION(type, name, "") | ^~~~~~~~~~~~~~~~~~~~~~ include/rv/ltl_monitor.h:69:16: note: in expansion of macro 'DEFINE_PER_CPU' 69 | static DEFINE_PER_CPU(struct ltl_monitor, ltl_monitor); | ^~~~~~~~~~~~~~ >> include/rv/ltl_monitor.h:69:51: error: section attribute cannot be specified >> for local variables 69 | static DEFINE_PER_CPU(struct ltl_monitor, ltl_monitor); | ^~~~~~~~~~~ include/linux/percpu-defs.h:92:51: note: in definition of macro 'DEFINE_PER_CPU_SECTION' 92 | extern __PCPU_ATTRS(sec) __typeof__(type) name; \ | ^~~~ include/rv/ltl_monitor.h:69:16: note: in expansion of macro 'DEFINE_PER_CPU' 69 | static DEFINE_PER_CPU(struct ltl_monitor, ltl_monitor); | ^~~~~~~~~~~~~~ >> include/rv/ltl_monitor.h:69:51: error: section attribute cannot be specified >> for local variables 69 | static DEFINE_PER_CPU(struct ltl_monitor, ltl_monitor); | ^~~~~~~~~~~ include/linux/percpu-defs.h:93:51: note: in definition of macro 'DEFINE_PER_CPU_SECTION' 93 | __PCPU_ATTRS(sec) __weak __typeof__(type) name | ^~~~ include/rv/ltl_monitor.h:69:16: note: in expansion of macro 'DEFINE_PER_CPU' 69 | static DEFINE_PER_CPU(struct ltl_monitor, ltl_monitor); | ^~~~~~~~~~~~~~ >> include/rv/ltl_monitor.h:69:51: error: weak declaration of 'ltl_monitor' >> must be public 69 | static DEFINE_PER_CPU(struct ltl_monitor, ltl_monitor); | ^~~~~~~~~~~ include/linux/percpu-defs.h:93:51: note: in definition of macro 'DEFINE_PER_CPU_SECTION' 93 | __PCPU_ATTRS(sec) __weak __typeof__(type) name | ^~~~ include/rv/ltl_monitor.h:69:16: note: in expansion of macro 'DEFINE_PER_CPU' 69 | static DEFINE_PER_CPU(struct ltl_monitor, ltl_monitor); | ^~~~~~~~~~~~~~ >> include/rv/ltl_monitor.h:69:51: error: declaration of 'ltl_monitor' with no >> linkage follows extern declaration 69 | static DEFINE_PER_CPU(struct ltl_monitor, ltl_monitor); | ^~~~~~~~~~~ include/linux/percpu-defs.h:93:51: note: in definition of macro 'DEFINE_PER_CPU_SECTION' 93 | __PCPU_ATTRS(sec) __weak __typeof__(type) name | ^~~~ include/rv/ltl_monitor.h:69:16: note: in expansion of macro 'DEFINE_PER_CPU' 69 | static DEFINE_PER_CPU(struct ltl_monitor, ltl_monitor); | ^~~~~~~~~~~~~~ include/rv/ltl_monitor.h:69:51: note: previous declaration of 'ltl_monitor' with type 'struct ltl_monitor' 69 | static DEFINE_PER_CPU(struct ltl_monitor, ltl_monitor); | ^~~~~~~~~~~ include/linux/percpu-defs.h:92:51: note: in definition of macro 'DEFINE_PER_CPU_SECTION' 92 | extern __PCPU_ATTRS(sec) __typeof__(type) name; \ | ^~~~ include/rv/ltl_monitor.h:69:16: note: in expansion of macro 'DEFINE_PER_CPU' 69 | static DEFINE_PER_CPU(struct ltl_monitor, ltl_monitor); | ^~~~~~~~~~~~~~ vim +69 include/rv/ltl_monitor.h a9769a5b987838 Nam Cao 2025-07-09 61 59c45d176bc0f2 Nam Cao 2025-08-06 62 static struct ltl_monitor *ltl_get_monitor(monitor_target target) a9769a5b987838 Nam Cao 2025-07-09 63 { 59c45d176bc0f2 Nam Cao 2025-08-06 64 return &target->rv[ltl_monitor_slot].ltl_mon; a9769a5b987838 Nam Cao 2025-07-09 65 } 50fd6be3de4982 Nam Cao 2025-08-06 66 #elif LTL_MONITOR_TYPE == RV_MON_PER_CPU 50fd6be3de4982 Nam Cao 2025-08-06 67 static struct ltl_monitor *ltl_get_monitor(unsigned int cpu) 50fd6be3de4982 Nam Cao 2025-08-06 68 { 50fd6be3de4982 Nam Cao 2025-08-06 @69 static DEFINE_PER_CPU(struct ltl_monitor, ltl_monitor); 50fd6be3de4982 Nam Cao 2025-08-06 70 50fd6be3de4982 Nam Cao 2025-08-06 71 return per_cpu_ptr(<l_monitor, cpu); 50fd6be3de4982 Nam Cao 2025-08-06 72 } 59c45d176bc0f2 Nam Cao 2025-08-06 73 #endif a9769a5b987838 Nam Cao 2025-07-09 74 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
