Hi Daniel,
[FYI, it's a private test report for your RFC patch.]
[auto build test ERROR on tip/perf/core]
[also build test ERROR on linux/master linus/master v5.12-rc6]
[cannot apply to trace/for-next next-20210408]
[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]
url:
https://github.com/0day-ci/linux/commits/Daniel-Bristot-de-Oliveira/hwlat...
base:
https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git
cface0326a6c2ae5c8f47bd466f07624b3e348a7
config: mips-randconfig-r002-20210408 (attached as .config)
compiler: clang version 13.0.0 (
https://github.com/llvm/llvm-project
56ea2e2fdd691136d5e6631fa0e447173694b82c)
reproduce (this is a W=1 build):
wget
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O
~/bin/make.cross
chmod +x ~/bin/make.cross
# install mips cross compiling tool for clang build
# apt-get install binutils-mips-linux-gnu
#
https://github.com/0day-ci/linux/commit/4e2f5d30c69f77756e8cf223acf55c2aa...
git remote add linux-review
https://github.com/0day-ci/linux
git fetch --no-tags linux-review
Daniel-Bristot-de-Oliveira/hwlat-improvements-and-osnoise-tracer/20210408-221655
git checkout 4e2f5d30c69f77756e8cf223acf55c2aa2657393
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=mips
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
kernel/trace/trace_hwlat.c:122:28: warning: no previous prototype for function
'get_cpu_data' [-Wmissing-prototypes]
struct hwlat_kthread_data *get_cpu_data(void)
^
kernel/trace/trace_hwlat.c:122:1: note: declare 'static' if the function is not
intended to be used outside of this translation unit
struct hwlat_kthread_data *get_cpu_data(void)
^
static
> kernel/trace/trace_hwlat.c:496:25: error: incompatible pointer
types passing 'struct cpumask **' to parameter of type 'cpumask_var_t *'
(aka 'struct cpumask (*)[1]') [-Werror,-Wincompatible-pointer-types]
if (!alloc_cpumask_var(&this_cpumask, GFP_KERNEL))
^~~~~~~~~~~~~
include/linux/cpumask.h:767:53: note: passing argument to parameter 'mask'
here
static inline bool alloc_cpumask_var(cpumask_var_t *mask, gfp_t flags)
^
1 warning and 1 error generated.
vim +496 kernel/trace/trace_hwlat.c
480
481 /**
482 * start_per_cpu_kthread - Kick off the hardware latency sampling/detector
kthreads
483 *
484 * This starts the kernel threads that will sit on potentially all cpus and
485 * sample the CPU timestamp counter (TSC or similar) and look for potential
486 * hardware latencies.
487 */
488 static int start_per_cpu_kthreads(struct trace_array *tr)
489 {
490 struct cpumask *current_mask = &save_cpumask;
491 struct cpumask *this_cpumask;
492 struct task_struct *kthread;
493 char comm[24];
494 int cpu;
495
496 if (!alloc_cpumask_var(&this_cpumask, GFP_KERNEL))
497 return -ENOMEM;
498
499 get_online_cpus();
500 /*
501 * Run only on CPUs in which trace and hwlat are allowed to run.
502 */
503 cpumask_and(current_mask, tr->tracing_cpumask, &hwlat_cpumask);
504 /*
505 * And the CPU is online.
506 */
507 cpumask_and(current_mask, cpu_online_mask, current_mask);
508 put_online_cpus();
509
510 for_each_online_cpu(cpu)
511 per_cpu(hwlat_per_cpu_data, cpu).kthread = NULL;
512
513 for_each_cpu(cpu, current_mask) {
514 snprintf(comm, 24, "hwlatd/%d", cpu);
515
516 kthread = kthread_create_on_cpu(kthread_fn, NULL, cpu, comm);
517 if (IS_ERR(kthread)) {
518 pr_err(BANNER "could not start sampling thread\n");
519 stop_per_cpu_kthreads();
520 return -ENOMEM;
521 }
522
523 per_cpu(hwlat_per_cpu_data, cpu).kthread = kthread;
524 wake_up_process(kthread);
525 }
526
527 return 0;
528 }
529
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org