Hmm, so it is clear that we can not use C++11. So it should use another way to do that.
Thank you, On Sat, 18 Oct 2025 18:10:01 +0800 kernel test robot <[email protected]> wrote: > Hi Masami, > > kernel test robot noticed the following build errors: > > [auto build test ERROR on trace/for-next] > [also build test ERROR on linus/master v6.18-rc1 next-20251017] > [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/Masami-Hiramatsu-Google/tracing-Allow-tracer-to-add-more-than-32-options/20251018-004104 > base: https://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace > for-next > patch link: > https://lore.kernel.org/r/176071774097.175601.10233017390618260565.stgit%40devnote2 > patch subject: [PATCH v4 1/2] tracing: Allow tracer to add more than 32 > options > config: parisc-randconfig-001-20251018 > (https://download.01.org/0day-ci/archive/20251018/[email protected]/config) > compiler: hppa-linux-gcc (GCC) 10.5.0 > reproduce (this is a W=1 build): > (https://download.01.org/0day-ci/archive/20251018/[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 kernel/trace/trace_probe.h:31, > from kernel/trace/trace_events_synth.c:20: > kernel/trace/trace.h:1427:27: error: expected identifier or '(' before ':' > token > 1427 | enum trace_iterator_flags : uint64_t { TRACE_FLAGS }; > | ^ > kernel/trace/trace_events_synth.c: In function 'print_synth_event': > >> kernel/trace/trace_events_synth.c:362:31: error: 'TRACE_ITER_VERBOSE' > >> undeclared (first use in this function); did you mean > >> 'TRACE_ITER_VERBOSE_BIT'? > 362 | if (tr && tr->trace_flags & TRACE_ITER_VERBOSE) > | ^~~~~~~~~~~~~~~~~~ > | TRACE_ITER_VERBOSE_BIT > kernel/trace/trace_events_synth.c:362:31: note: each undeclared identifier > is reported only once for each function it appears in > > > vim +362 kernel/trace/trace_events_synth.c > > 726721a51838e3 Tom Zanussi 2020-05-28 337 > 726721a51838e3 Tom Zanussi 2020-05-28 338 static enum > print_line_t print_synth_event(struct trace_iterator *iter, > 726721a51838e3 Tom Zanussi 2020-05-28 339 > int flags, > 726721a51838e3 Tom Zanussi 2020-05-28 340 > struct trace_event *event) > 726721a51838e3 Tom Zanussi 2020-05-28 341 { > 726721a51838e3 Tom Zanussi 2020-05-28 342 struct > trace_array *tr = iter->tr; > 726721a51838e3 Tom Zanussi 2020-05-28 343 struct > trace_seq *s = &iter->seq; > 726721a51838e3 Tom Zanussi 2020-05-28 344 struct > synth_trace_event *entry; > 726721a51838e3 Tom Zanussi 2020-05-28 345 struct > synth_event *se; > 887f92e09ef34a Sven Schnelle 2023-08-16 346 unsigned int i, > j, n_u64; > 726721a51838e3 Tom Zanussi 2020-05-28 347 char > print_fmt[32]; > 726721a51838e3 Tom Zanussi 2020-05-28 348 const char *fmt; > 726721a51838e3 Tom Zanussi 2020-05-28 349 > 726721a51838e3 Tom Zanussi 2020-05-28 350 entry = (struct > synth_trace_event *)iter->ent; > 726721a51838e3 Tom Zanussi 2020-05-28 351 se = > container_of(event, struct synth_event, call.event); > 726721a51838e3 Tom Zanussi 2020-05-28 352 > 726721a51838e3 Tom Zanussi 2020-05-28 353 > trace_seq_printf(s, "%s: ", se->name); > 726721a51838e3 Tom Zanussi 2020-05-28 354 > 726721a51838e3 Tom Zanussi 2020-05-28 355 for (i = 0, > n_u64 = 0; i < se->n_fields; i++) { > 726721a51838e3 Tom Zanussi 2020-05-28 356 if > (trace_seq_has_overflowed(s)) > 726721a51838e3 Tom Zanussi 2020-05-28 357 > goto end; > 726721a51838e3 Tom Zanussi 2020-05-28 358 > 726721a51838e3 Tom Zanussi 2020-05-28 359 fmt = > synth_field_fmt(se->fields[i]->type); > 726721a51838e3 Tom Zanussi 2020-05-28 360 > 726721a51838e3 Tom Zanussi 2020-05-28 361 /* > parameter types */ > 726721a51838e3 Tom Zanussi 2020-05-28 @362 if (tr > && tr->trace_flags & TRACE_ITER_VERBOSE) > 726721a51838e3 Tom Zanussi 2020-05-28 363 > trace_seq_printf(s, "%s ", fmt); > 726721a51838e3 Tom Zanussi 2020-05-28 364 > 726721a51838e3 Tom Zanussi 2020-05-28 365 > snprintf(print_fmt, sizeof(print_fmt), "%%s=%s%%s", fmt); > 726721a51838e3 Tom Zanussi 2020-05-28 366 > 726721a51838e3 Tom Zanussi 2020-05-28 367 /* > parameter values */ > 726721a51838e3 Tom Zanussi 2020-05-28 368 if > (se->fields[i]->is_string) { > bd82631d7ccdc8 Tom Zanussi 2020-10-04 369 > if (se->fields[i]->is_dynamic) { > ddeea494a16f32 Sven Schnelle 2023-08-16 370 > union trace_synth_field *data = &entry->fields[n_u64]; > bd82631d7ccdc8 Tom Zanussi 2020-10-04 371 > bd82631d7ccdc8 Tom Zanussi 2020-10-04 372 > trace_seq_printf(s, print_fmt, se->fields[i]->name, > ddeea494a16f32 Sven Schnelle 2023-08-16 373 > (char *)entry + data->as_dynamic.offset, > bd82631d7ccdc8 Tom Zanussi 2020-10-04 374 > i == se->n_fields - 1 ? "" : " "); > bd82631d7ccdc8 Tom Zanussi 2020-10-04 375 > n_u64++; > bd82631d7ccdc8 Tom Zanussi 2020-10-04 376 > } else { > 726721a51838e3 Tom Zanussi 2020-05-28 377 > trace_seq_printf(s, print_fmt, se->fields[i]->name, > 8db4d6bfbbf920 Steven Rostedt (VMware 2020-10-04 378) > STR_VAR_LEN_MAX, > ddeea494a16f32 Sven Schnelle 2023-08-16 379 > (char *)&entry->fields[n_u64].as_u64, > 726721a51838e3 Tom Zanussi 2020-05-28 380 > i == se->n_fields - 1 ? "" : " "); > 726721a51838e3 Tom Zanussi 2020-05-28 381 > n_u64 += STR_VAR_LEN_MAX / sizeof(u64); > bd82631d7ccdc8 Tom Zanussi 2020-10-04 382 > } > 00cf3d672a9dd4 Steven Rostedt (Google 2023-01-17 383) } else > if (se->fields[i]->is_stack) { > ddeea494a16f32 Sven Schnelle 2023-08-16 384 > union trace_synth_field *data = &entry->fields[n_u64]; > 887f92e09ef34a Sven Schnelle 2023-08-16 385 > unsigned long *p = (void *)entry + data->as_dynamic.offset; > 00cf3d672a9dd4 Steven Rostedt (Google 2023-01-17 386) > 00cf3d672a9dd4 Steven Rostedt (Google 2023-01-17 387) > trace_seq_printf(s, "%s=STACK:\n", se->fields[i]->name); > 887f92e09ef34a Sven Schnelle 2023-08-16 388 > for (j = 1; j < data->as_dynamic.len / sizeof(long); j++) > 887f92e09ef34a Sven Schnelle 2023-08-16 389 > trace_seq_printf(s, "=> %pS\n", (void *)p[j]); > 00cf3d672a9dd4 Steven Rostedt (Google 2023-01-17 390) > n_u64++; > 726721a51838e3 Tom Zanussi 2020-05-28 391 } else { > 726721a51838e3 Tom Zanussi 2020-05-28 392 > struct trace_print_flags __flags[] = { > 726721a51838e3 Tom Zanussi 2020-05-28 393 > __def_gfpflag_names, {-1, NULL} }; > 726721a51838e3 Tom Zanussi 2020-05-28 394 > char *space = (i == se->n_fields - 1 ? "" : " "); > 726721a51838e3 Tom Zanussi 2020-05-28 395 > 726721a51838e3 Tom Zanussi 2020-05-28 396 > print_synth_event_num_val(s, print_fmt, > 726721a51838e3 Tom Zanussi 2020-05-28 397 > se->fields[i]->name, > 726721a51838e3 Tom Zanussi 2020-05-28 398 > se->fields[i]->size, > ddeea494a16f32 Sven Schnelle 2023-08-16 399 > &entry->fields[n_u64], > 726721a51838e3 Tom Zanussi 2020-05-28 400 > space); > 726721a51838e3 Tom Zanussi 2020-05-28 401 > 726721a51838e3 Tom Zanussi 2020-05-28 402 > if (strcmp(se->fields[i]->type, "gfp_t") == 0) { > 726721a51838e3 Tom Zanussi 2020-05-28 403 > trace_seq_puts(s, " ("); > 726721a51838e3 Tom Zanussi 2020-05-28 404 > trace_print_flags_seq(s, "|", > ddeea494a16f32 Sven Schnelle 2023-08-16 405 > entry->fields[n_u64].as_u64, > 726721a51838e3 Tom Zanussi 2020-05-28 406 > __flags); > 726721a51838e3 Tom Zanussi 2020-05-28 407 > trace_seq_putc(s, ')'); > 726721a51838e3 Tom Zanussi 2020-05-28 408 > } > 726721a51838e3 Tom Zanussi 2020-05-28 409 > n_u64++; > 726721a51838e3 Tom Zanussi 2020-05-28 410 } > 726721a51838e3 Tom Zanussi 2020-05-28 411 } > 726721a51838e3 Tom Zanussi 2020-05-28 412 end: > 726721a51838e3 Tom Zanussi 2020-05-28 413 > trace_seq_putc(s, '\n'); > 726721a51838e3 Tom Zanussi 2020-05-28 414 > 726721a51838e3 Tom Zanussi 2020-05-28 415 return > trace_handle_return(s); > 726721a51838e3 Tom Zanussi 2020-05-28 416 } > 726721a51838e3 Tom Zanussi 2020-05-28 417 > > -- > 0-DAY CI Kernel Test Service > https://github.com/intel/lkp-tests/wiki -- Masami Hiramatsu (Google) <[email protected]>
