arch/x86/kernel/cpu/debugfs.c:11:33: sparse: sparse: incorrect type in initializer (different address spaces)

From: kernel test robot
Date: Thu Nov 30 2023 - 15:21:58 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 3b47bc037bd44f142ac09848e8d3ecccc726be99
commit: 48525fd1ea1cfa059a580e77b10ea8790914efa2 x86/cpu: Provide debug interface
date: 7 weeks ago
config: i386-randconfig-061-20231014 (https://download.01.org/0day-ci/archive/20231201/202312010444.uoDYtflb-lkp@xxxxxxxxx/config)
compiler: gcc-7 (Ubuntu 7.5.0-6ubuntu2) 7.5.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231201/202312010444.uoDYtflb-lkp@xxxxxxxxx/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@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202312010444.uoDYtflb-lkp@xxxxxxxxx/

sparse warnings: (new ones prefixed by >>)
>> arch/x86/kernel/cpu/debugfs.c:11:33: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected void const [noderef] __percpu *__vpp_verify @@ got struct cpuinfo_x86 * @@
arch/x86/kernel/cpu/debugfs.c:11:33: sparse: expected void const [noderef] __percpu *__vpp_verify
arch/x86/kernel/cpu/debugfs.c:11:33: sparse: got struct cpuinfo_x86 *

vim +11 arch/x86/kernel/cpu/debugfs.c

7
8 static int cpu_debug_show(struct seq_file *m, void *p)
9 {
10 unsigned long cpu = (unsigned long)m->private;
> 11 struct cpuinfo_x86 *c = per_cpu_ptr(&cpu_info, cpu);
12
13 seq_printf(m, "online: %d\n", cpu_online(cpu));
14 if (!c->initialized)
15 return 0;
16
17 seq_printf(m, "initial_apicid: %x\n", c->topo.initial_apicid);
18 seq_printf(m, "apicid: %x\n", c->topo.apicid);
19 seq_printf(m, "pkg_id: %u\n", c->topo.pkg_id);
20 seq_printf(m, "die_id: %u\n", c->topo.die_id);
21 seq_printf(m, "cu_id: %u\n", c->topo.cu_id);
22 seq_printf(m, "core_id: %u\n", c->topo.core_id);
23 seq_printf(m, "logical_pkg_id: %u\n", c->topo.logical_pkg_id);
24 seq_printf(m, "logical_die_id: %u\n", c->topo.logical_die_id);
25 seq_printf(m, "llc_id: %u\n", c->topo.llc_id);
26 seq_printf(m, "l2c_id: %u\n", c->topo.l2c_id);
27 seq_printf(m, "max_cores: %u\n", c->x86_max_cores);
28 seq_printf(m, "max_die_per_pkg: %u\n", __max_die_per_package);
29 seq_printf(m, "smp_num_siblings: %u\n", smp_num_siblings);
30 return 0;
31 }
32

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki