[PATCH] sched: topology: make cache topology separate from cpu topology

kernel test robot lkp at intel.com
Thu Mar 10 09:35:58 PST 2022


Hi Qing,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on arm64/for-next/core]
[also build test WARNING on driver-core/driver-core-testing tip/sched/core linus/master v5.17-rc7 next-20220310]
[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/Qing-Wang/sched-topology-make-cache-topology-separate-from-cpu-topology/20220310-210139
base:   https://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-next/core
config: i386-randconfig-a003 (https://download.01.org/0day-ci/archive/20220311/202203110141.qsdgjdyC-lkp@intel.com/config)
compiler: gcc-9 (Ubuntu 9.4.0-1ubuntu1~20.04) 9.4.0
reproduce (this is a W=1 build):
        # https://github.com/0day-ci/linux/commit/035814a878b0c4cb313ebd35464e2149d8592d89
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Qing-Wang/sched-topology-make-cache-topology-separate-from-cpu-topology/20220310-210139
        git checkout 035814a878b0c4cb313ebd35464e2149d8592d89
        # save the config file to linux build tree
        mkdir build_dir
        make W=1 O=build_dir ARCH=i386 SHELL=/bin/bash kernel/sched/

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp at intel.com>

All warnings (new ones prefixed by >>):

   kernel/sched/topology.c: In function 'set_sd_llc':
   kernel/sched/topology.c:663:38: error: 'MAX_CPU_CACHE_LEVEL' undeclared (first use in this function)
     663 |  for (cache_level = 0; cache_level < MAX_CPU_CACHE_LEVEL; cache_level++) {
         |                                      ^~~~~~~~~~~~~~~~~~~
   kernel/sched/topology.c:663:38: note: each undeclared identifier is reported only once for each function it appears in
   kernel/sched/topology.c:664:8: error: 'cache_topology' undeclared (first use in this function); did you mean 'cpu_topology'?
     664 |   if (!cache_topology[cpu][cache_level])
         |        ^~~~~~~~~~~~~~
         |        cpu_topology
>> kernel/sched/topology.c:653:28: warning: parameter 'cpu' set but not used [-Wunused-but-set-parameter]
     653 | static void set_sd_llc(int cpu, struct sched_domain *sd, int *first_cpu, int *cpu_num)
         |                        ~~~~^~~


vim +/cpu +653 kernel/sched/topology.c

   652	
 > 653	static void set_sd_llc(int cpu, struct sched_domain *sd, int *first_cpu, int *cpu_num)
   654	{
   655		int cache_level, cpu_id;
   656		int first, last;
   657		int id = cpumask_first(sched_domain_span(sd));
   658		int size = cpumask_weight(sched_domain_span(sd));
   659	
   660		*first_cpu = id;
   661		*cpu_num = size;
   662	
 > 663		for (cache_level = 0; cache_level < MAX_CPU_CACHE_LEVEL; cache_level++) {
   664			if (!cache_topology[cpu][cache_level])
   665				break;
   666	
   667			first = -1;
   668			last = id;
   669			for (cpu_id = 0; cpu_id < NR_CPUS; cpu_id++) {
   670				if (cache_topology[cpu][cache_level] == cache_topology[cpu_id][cache_level]) {
   671					if (cpu_id >= id && cpu_id < id + size) {
   672						first = (first == -1)?cpu_id:first;
   673						last = cpu_id;
   674					} else
   675						return;
   676				}
   677			}
   678			*first_cpu = first;
   679			*cpu_num = last - first + 1;
   680		}
   681	}
   682	

---
0-DAY CI Kernel Test Service
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org



More information about the linux-arm-kernel mailing list