From: kernel test robot <lkp@intel.com>
To: Steven Rostedt <rostedt@goodmis.org>,
linux-kernel@vger.kernel.org, linux-trace-kernel@vger.kernel.org
Cc: oe-kbuild-all@lists.linux.dev,
Masami Hiramatsu <mhiramat@kernel.org>,
Mark Rutland <mark.rutland@arm.com>,
Mathieu Desnoyers <mathieu.desnoyers@efficios.com>,
Andrew Morton <akpm@linux-foundation.org>,
Linux Memory Management List <linux-mm@kvack.org>
Subject: Re: [PATCH 3/5] tracing: Have tracer option be instance specific
Date: Thu, 6 Nov 2025 22:38:04 +0800 [thread overview]
Message-ID: <202511062223.ocoUvCBI-lkp@intel.com> (raw)
In-Reply-To: <20251105161935.545400234@kernel.org>
Hi Steven,
kernel test robot noticed the following build errors:
[auto build test ERROR on trace/for-next]
[cannot apply to linus/master v6.18-rc4 next-20251106]
[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-Remove-dummy-options-and-flags/20251106-010511
base: https://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace for-next
patch link: https://lore.kernel.org/r/20251105161935.545400234%40kernel.org
patch subject: [PATCH 3/5] tracing: Have tracer option be instance specific
config: i386-buildonly-randconfig-003-20251106 (https://download.01.org/0day-ci/archive/20251106/202511062223.ocoUvCBI-lkp@intel.com/config)
compiler: gcc-14 (Debian 14.2.0-19) 14.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251106/202511062223.ocoUvCBI-lkp@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 <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202511062223.ocoUvCBI-lkp@intel.com/
All error/warnings (new ones prefixed by >>):
kernel/trace/trace.c: In function 'run_tracer_selftest':
>> kernel/trace/trace.c:2174:30: error: 'type' redeclared as different kind of symbol
2174 | struct trace_tracer *type = tracers->trace;
| ^~~~
kernel/trace/trace.c:2171:47: note: previous definition of 'type' with type 'struct tracer *'
2171 | static int run_tracer_selftest(struct tracer *type)
| ~~~~~~~~~~~~~~~^~~~
>> kernel/trace/trace.c:2174:37: error: 'tracers' undeclared (first use in this function)
2174 | struct trace_tracer *type = tracers->trace;
| ^~~~~~~
kernel/trace/trace.c:2174:37: note: each undeclared identifier is reported only once for each function it appears in
>> kernel/trace/trace.c:2180:18: error: invalid use of undefined type 'struct trace_tracer'
2180 | if (!type->selftest || tracing_selftest_disabled)
| ^~
>> kernel/trace/trace.c:2189:38: error: passing argument 1 of 'save_selftest' from incompatible pointer type [-Wincompatible-pointer-types]
2189 | return save_selftest(type);
| ^~~~
| |
| struct trace_tracer *
kernel/trace/trace.c:2158:41: note: expected 'struct tracer *' but argument is of type 'struct trace_tracer *'
2158 | static int save_selftest(struct tracer *type)
| ~~~~~~~~~~~~~~~^~~~
In file included from include/asm-generic/bug.h:22,
from arch/x86/include/asm/bug.h:108,
from include/linux/bug.h:5,
from include/linux/mmdebug.h:5,
from include/linux/mm.h:6,
from include/linux/ring_buffer.h:5,
from kernel/trace/trace.c:15:
kernel/trace/trace.c:2193:29: error: invalid use of undefined type 'struct trace_tracer'
2193 | type->name);
| ^~
include/linux/printk.h:484:33: note: in definition of macro 'printk_index_wrap'
484 | _p_func(_fmt, ##__VA_ARGS__); \
| ^~~~~~~~~~~
include/linux/printk.h:565:9: note: in expansion of macro 'printk'
565 | printk(KERN_WARNING pr_fmt(fmt), ##__VA_ARGS__)
| ^~~~~~
kernel/trace/trace.c:2192:17: note: in expansion of macro 'pr_warn'
2192 | pr_warn("Selftest for tracer %s skipped due to tracing disabled\n",
| ^~~~~~~
>> kernel/trace/trace.c:2206:27: error: assignment to 'struct tracer *' from incompatible pointer type 'struct trace_tracer *' [-Wincompatible-pointer-types]
2206 | tr->current_trace = type;
| ^
kernel/trace/trace.c:2207:39: error: invalid use of undefined type 'struct trace_tracer'
2207 | tr->current_trace_flags = type->flags ? : type->default_flags;
| ^~
kernel/trace/trace.c:2207:55: error: invalid use of undefined type 'struct trace_tracer'
2207 | tr->current_trace_flags = type->flags ? : type->default_flags;
| ^~
kernel/trace/trace.c:2210:17: error: invalid use of undefined type 'struct trace_tracer'
2210 | if (type->use_max_tr) {
| ^~
kernel/trace/trace.c:2220:44: error: invalid use of undefined type 'struct trace_tracer'
2220 | pr_info("Testing tracer %s: ", type->name);
| ^~
include/linux/printk.h:484:33: note: in definition of macro 'printk_index_wrap'
484 | _p_func(_fmt, ##__VA_ARGS__); \
| ^~~~~~~~~~~
include/linux/printk.h:585:9: note: in expansion of macro 'printk'
585 | printk(KERN_INFO pr_fmt(fmt), ##__VA_ARGS__)
| ^~~~~~
kernel/trace/trace.c:2220:9: note: in expansion of macro 'pr_info'
2220 | pr_info("Testing tracer %s: ", type->name);
| ^~~~~~~
kernel/trace/trace.c:2221:19: error: invalid use of undefined type 'struct trace_tracer'
2221 | ret = type->selftest(type, tr);
| ^~
kernel/trace/trace.c:2235:17: error: invalid use of undefined type 'struct trace_tracer'
2235 | if (type->use_max_tr) {
| ^~
>> kernel/trace/trace.c:2176:30: warning: unused variable 'flags' [-Wunused-variable]
2176 | struct tracer_flags *flags;
| ^~~~~
kernel/trace/trace.c: In function 'tracing_trace_options_show':
kernel/trace/trace.c:5172:24: warning: variable 'trace' set but not used [-Wunused-but-set-variable]
5172 | struct tracer *trace;
| ^~~~~
vim +/type +2174 kernel/trace/trace.c
2170
> 2171 static int run_tracer_selftest(struct tracer *type)
2172 {
2173 struct trace_array *tr = &global_trace;
> 2174 struct trace_tracer *type = tracers->trace;
2175 struct tracer_flags *saved_flags = tr->current_trace_flags;
> 2176 struct tracer_flags *flags;
2177 struct tracer *saved_tracer = tr->current_trace;
2178 int ret;
2179
> 2180 if (!type->selftest || tracing_selftest_disabled)
2181 return 0;
2182
2183 /*
2184 * If a tracer registers early in boot up (before scheduling is
2185 * initialized and such), then do not run its selftests yet.
2186 * Instead, run it a little later in the boot process.
2187 */
2188 if (!selftests_can_run)
> 2189 return save_selftest(type);
2190
2191 if (!tracing_is_on()) {
> 2192 pr_warn("Selftest for tracer %s skipped due to tracing disabled\n",
2193 type->name);
2194 return 0;
2195 }
2196
2197 /*
2198 * Run a selftest on this tracer.
2199 * Here we reset the trace buffer, and set the current
2200 * tracer to be this tracer. The tracer can then run some
2201 * internal tracing to verify that everything is in order.
2202 * If we fail, we do not register this tracer.
2203 */
2204 tracing_reset_online_cpus(&tr->array_buffer);
2205
> 2206 tr->current_trace = type;
2207 tr->current_trace_flags = type->flags ? : type->default_flags;
2208
2209 #ifdef CONFIG_TRACER_MAX_TRACE
2210 if (type->use_max_tr) {
2211 /* If we expanded the buffers, make sure the max is expanded too */
2212 if (tr->ring_buffer_expanded)
2213 ring_buffer_resize(tr->max_buffer.buffer, trace_buf_size,
2214 RING_BUFFER_ALL_CPUS);
2215 tr->allocated_snapshot = true;
2216 }
2217 #endif
2218
2219 /* the test is responsible for initializing and enabling */
> 2220 pr_info("Testing tracer %s: ", type->name);
2221 ret = type->selftest(type, tr);
2222 /* the test is responsible for resetting too */
2223 tr->current_trace = saved_tracer;
2224 tr->current_trace_flags = saved_flags;
2225 if (ret) {
2226 printk(KERN_CONT "FAILED!\n");
2227 /* Add the warning after printing 'FAILED' */
2228 WARN_ON(1);
2229 return -1;
2230 }
2231 /* Only reset on passing, to avoid touching corrupted buffers */
2232 tracing_reset_online_cpus(&tr->array_buffer);
2233
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next prev parent reply other threads:[~2025-11-06 14:38 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-11-05 16:19 [PATCH 0/5] tracing: Fix tracer options per instance Steven Rostedt
2025-11-05 16:19 ` [PATCH 1/5] tracing: Remove dummy options and flags Steven Rostedt
2025-11-05 16:19 ` [PATCH 2/5] tracing: Have add_tracer_options() error pass up to callers Steven Rostedt
2025-11-05 16:19 ` [PATCH 3/5] tracing: Have tracer option be instance specific Steven Rostedt
2025-11-06 14:38 ` kernel test robot [this message]
2025-11-06 17:19 ` Steven Rostedt
2025-11-06 15:29 ` kernel test robot
2025-11-07 7:18 ` kernel test robot
2026-01-05 15:23 ` Dan Carpenter
2026-01-09 15:23 ` Steven Rostedt
2026-01-09 21:40 ` Dan Carpenter
2025-11-05 16:19 ` [PATCH 4/5] tracing: Have function tracer define options per instance Steven Rostedt
2025-11-05 16:19 ` [PATCH 5/5] tracing: Have function graph " Steven Rostedt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202511062223.ocoUvCBI-lkp@intel.com \
--to=lkp@intel.com \
--cc=akpm@linux-foundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linux-trace-kernel@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=mathieu.desnoyers@efficios.com \
--cc=mhiramat@kernel.org \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=rostedt@goodmis.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.