Hi Steven, kernel test robot noticed the following build errors:
[auto build test ERROR on trace/for-next] [also build test ERROR on linus/master v6.15-rc5 next-20250502] [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/Steven-Rostedt/tracing-mmiotrace-Remove-reference-to-unused-per-CPU-data-pointer/20250503-050317 base: https://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace for-next patch link: https://lore.kernel.org/r/20250502205349.299144667%40goodmis.org patch subject: [PATCH 09/12] tracing: branch: Use trace_tracing_is_on_cpu() instead of "disabled" field config: i386-buildonly-randconfig-002-20250505 (https://download.01.org/0day-ci/archive/20250505/202505051827.xku53tzl-...@intel.com/config) compiler: clang version 20.1.2 (https://github.com/llvm/llvm-project 58df0ef89dd64126512e4ee27b4ac3fd8ddf6247) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250505/202505051827.xku53tzl-...@intel.com/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 <l...@intel.com> | Closes: https://lore.kernel.org/oe-kbuild-all/202505051827.xku53tzl-...@intel.com/ All errors (new ones prefixed by >>): >> kernel/trace/trace_branch.c:56:36: error: call to undeclared function >> 'raw_smp_process_id'; ISO C99 and later do not support implicit function >> declarations [-Wimplicit-function-declaration] 56 | if (!tracer_tracing_is_on_cpu(tr, raw_smp_process_id())) | ^ kernel/trace/trace_branch.c:56:36: note: did you mean 'safe_smp_processor_id'? arch/x86/include/asm/smp.h:140:12: note: 'safe_smp_processor_id' declared here 140 | extern int safe_smp_processor_id(void); | ^ 1 error generated. vim +/raw_smp_process_id +56 kernel/trace/trace_branch.c 29 30 static void 31 probe_likely_condition(struct ftrace_likely_data *f, int val, int expect) 32 { 33 struct trace_array *tr = branch_tracer; 34 struct trace_buffer *buffer; 35 struct ring_buffer_event *event; 36 struct trace_branch *entry; 37 unsigned long flags; 38 unsigned int trace_ctx; 39 const char *p; 40 41 if (current->trace_recursion & TRACE_BRANCH_BIT) 42 return; 43 44 /* 45 * I would love to save just the ftrace_likely_data pointer, but 46 * this code can also be used by modules. Ugly things can happen 47 * if the module is unloaded, and then we go and read the 48 * pointer. This is slower, but much safer. 49 */ 50 51 if (unlikely(!tr)) 52 return; 53 54 raw_local_irq_save(flags); 55 current->trace_recursion |= TRACE_BRANCH_BIT; > 56 if (!tracer_tracing_is_on_cpu(tr, raw_smp_process_id())) 57 goto out; 58 59 trace_ctx = tracing_gen_ctx_flags(flags); 60 buffer = tr->array_buffer.buffer; 61 event = trace_buffer_lock_reserve(buffer, TRACE_BRANCH, 62 sizeof(*entry), trace_ctx); 63 if (!event) 64 goto out; 65 66 entry = ring_buffer_event_data(event); 67 68 /* Strip off the path, only save the file */ 69 p = f->data.file + strlen(f->data.file); 70 while (p >= f->data.file && *p != '/') 71 p--; 72 p++; 73 74 strscpy(entry->func, f->data.func); 75 strscpy(entry->file, p); 76 entry->constant = f->constant; 77 entry->line = f->data.line; 78 entry->correct = val == expect; 79 80 trace_buffer_unlock_commit_nostack(buffer, event); 81 82 out: 83 current->trace_recursion &= ~TRACE_BRANCH_BIT; 84 raw_local_irq_restore(flags); 85 } 86 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki