public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* kernel/events/core.c:8288:1: sparse: sparse: symbol 'dev_attr_nr_addr_filters' was not declared. Should it be static?
@ 2023-12-03  6:31 kernel test robot
  0 siblings, 0 replies; 4+ messages in thread
From: kernel test robot @ 2023-12-03  6:31 UTC (permalink / raw)
  To: Alexander Shishkin
  Cc: oe-kbuild-all, linux-kernel, Ingo Molnar, Peter Zijlstra (Intel)

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   815fb87b753055df2d9e50f6cd80eb10235fe3e9
commit: 6e855cd4f4b5258016cf707f94f96bfa51c32f32 perf/core: Let userspace know if the PMU supports address filters
date:   8 years ago
config: x86_64-alldefconfig (https://download.01.org/0day-ci/archive/20231203/202312030617.SdoSYtcc-lkp@intel.com/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231203/202312030617.SdoSYtcc-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/202312030617.SdoSYtcc-lkp@intel.com/

sparse warnings: (new ones prefixed by >>)
   kernel/events/core.c:518:26: sparse: sparse: function 'perf_pmu_name' with external linkage has definition
   kernel/events/core.c:891:1: sparse: sparse: symbol 'perf_cgroup_switch' was not declared. Should it be static?
   kernel/events/core.c:993:22: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got int * @@
   kernel/events/core.c:993:22: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:993:22: sparse:     got int *
   kernel/events/core.c:1000:22: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got int * @@
   kernel/events/core.c:1000:22: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:1000:22: sparse:     got int *
   kernel/events/core.c:2783:34: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:2783:34: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:2783:34: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:3571:26: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:3571:26: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:3571:26: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:5913:26: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:5913:26: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:5913:26: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:6012:43: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:6012:43: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:6012:43: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:8237:35: sparse: sparse: incorrect type in return expression (different address spaces) @@     expected struct perf_cpu_context [noderef] <asn:3> * @@     got struct perf_cpu_context *[noderef] pmu_cpu_context @@
   kernel/events/core.c:8237:35: sparse:     expected struct perf_cpu_context [noderef] <asn:3> *
   kernel/events/core.c:8237:35: sparse:     got struct perf_cpu_context *[noderef] pmu_cpu_context
   kernel/events/core.c:8250:26: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:8250:26: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:8250:26: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:8272:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void [noderef] <asn:3> *__pdata @@     got struct perf_cpu_context *[noderef] pmu_cpu_context @@
   kernel/events/core.c:8272:24: sparse:     expected void [noderef] <asn:3> *__pdata
   kernel/events/core.c:8272:24: sparse:     got struct perf_cpu_context *[noderef] pmu_cpu_context
>> kernel/events/core.c:8288:1: sparse: sparse: symbol 'dev_attr_nr_addr_filters' was not declared. Should it be static?
   kernel/events/core.c:8339:26: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:8339:26: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:8339:26: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:8418:32: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int *[noderef] pmu_disable_count @@     got int [noderef] <asn:3> * @@
   kernel/events/core.c:8418:32: sparse:     expected int *[noderef] pmu_disable_count
   kernel/events/core.c:8418:32: sparse:     got int [noderef] <asn:3> *
   kernel/events/core.c:8452:30: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct perf_cpu_context *[noderef] pmu_cpu_context @@     got struct perf_cpu_context [noderef] <asn:3> * @@
   kernel/events/core.c:8452:30: sparse:     expected struct perf_cpu_context *[noderef] pmu_cpu_context
   kernel/events/core.c:8452:30: sparse:     got struct perf_cpu_context [noderef] <asn:3> *
   kernel/events/core.c:8457:30: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct perf_cpu_context *[noderef] pmu_cpu_context @@     got struct perf_cpu_context [noderef] <asn:3> * @@
   kernel/events/core.c:8457:30: sparse:     expected struct perf_cpu_context *[noderef] pmu_cpu_context
   kernel/events/core.c:8457:30: sparse:     got struct perf_cpu_context [noderef] <asn:3> *
   kernel/events/core.c:8464:26: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:8464:26: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:8464:26: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:8518:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void [noderef] <asn:3> *__pdata @@     got int *[noderef] pmu_disable_count @@
   kernel/events/core.c:8518:24: sparse:     expected void [noderef] <asn:3> *__pdata
   kernel/events/core.c:8518:24: sparse:     got int *[noderef] pmu_disable_count
   kernel/events/core.c:8536:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void [noderef] <asn:3> *__pdata @@     got int *[noderef] pmu_disable_count @@
   kernel/events/core.c:8536:24: sparse:     expected void [noderef] <asn:3> *__pdata
   kernel/events/core.c:8536:24: sparse:     got int *[noderef] pmu_disable_count
   kernel/events/core.c:9587:20: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:9587:20: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:9587:20: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:9588:20: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:9588:20: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:9588:20: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:152:9: sparse: sparse: context imbalance in 'perf_ctx_lock' - wrong count at exit
   kernel/events/core.c:160:17: sparse: sparse: context imbalance in 'perf_ctx_unlock' - unexpected unlock
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:993:22: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:1000:22: sparse: sparse: dereference of noderef expression
   kernel/events/core.c: note: in included file (through include/linux/rculist.h, include/linux/dcache.h, include/linux/fs.h):
   include/linux/rcupdate.h:924:9: sparse: sparse: context imbalance in 'perf_lock_task_context' - different lock contexts for basic block
   kernel/events/core.c:1281:17: sparse: sparse: context imbalance in 'perf_pin_task_context' - unexpected unlock
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:2191:9: sparse: sparse: context imbalance in '__perf_install_in_context' - wrong count at exit
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:2783:34: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:3571:26: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:3602:17: sparse: sparse: context imbalance in 'find_get_context' - unexpected unlock
   kernel/events/core.c: note: in included file:
   kernel/events/internal.h:188:1: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void const [noderef] <asn:1> *from @@     got void const *buf @@
   kernel/events/internal.h:188:1: sparse:     expected void const [noderef] <asn:1> *from
   kernel/events/internal.h:188:1: sparse:     got void const *buf
   kernel/events/internal.h:162:1: sparse: sparse: self-comparison always evaluates to true
   kernel/events/internal.h:162:1: sparse: sparse: self-comparison always evaluates to true
   kernel/events/internal.h:162:1: sparse: sparse: self-comparison always evaluates to true
   kernel/events/internal.h:162:1: sparse: sparse: self-comparison always evaluates to true
   kernel/events/internal.h:162:1: sparse: sparse: self-comparison always evaluates to true
   kernel/events/internal.h:162:1: sparse: sparse: self-comparison always evaluates to true
   kernel/events/core.c:5913:26: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:5924:17: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:6012:43: sparse: sparse: dereference of noderef expression
   kernel/events/internal.h:162:1: sparse: sparse: self-comparison always evaluates to true
   kernel/events/internal.h:162:1: sparse: sparse: self-comparison always evaluates to true
   kernel/events/core.c:8237:32: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8250:26: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8266:21: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8266:43: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8272:21: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8339:26: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8419:14: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8453:13: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8458:14: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8464:26: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8518:21: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8536:21: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:9587:20: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:9588:20: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   In file included from include/linux/kobject.h:21,

vim +/dev_attr_nr_addr_filters +8288 kernel/events/core.c

  8276	
  8277	/*
  8278	 * Let userspace know that this PMU supports address range filtering:
  8279	 */
  8280	static ssize_t nr_addr_filters_show(struct device *dev,
  8281					    struct device_attribute *attr,
  8282					    char *page)
  8283	{
  8284		struct pmu *pmu = dev_get_drvdata(dev);
  8285	
  8286		return snprintf(page, PAGE_SIZE - 1, "%d\n", pmu->nr_addr_filters);
  8287	}
> 8288	DEVICE_ATTR_RO(nr_addr_filters);
  8289	

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

^ permalink raw reply	[flat|nested] 4+ messages in thread
* kernel/events/core.c:8288:1: sparse: sparse: symbol 'dev_attr_nr_addr_filters' was not declared. Should it be static?
@ 2023-12-03  6:31 kernel test robot
  0 siblings, 0 replies; 4+ messages in thread
From: kernel test robot @ 2023-12-03  6:31 UTC (permalink / raw)
  To: Alexander Shishkin
  Cc: oe-kbuild-all, linux-kernel, Ingo Molnar, Peter Zijlstra (Intel)

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   815fb87b753055df2d9e50f6cd80eb10235fe3e9
commit: 6e855cd4f4b5258016cf707f94f96bfa51c32f32 perf/core: Let userspace know if the PMU supports address filters
date:   8 years ago
config: x86_64-alldefconfig (https://download.01.org/0day-ci/archive/20231202/202312022055.x0lPITvL-lkp@intel.com/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231202/202312022055.x0lPITvL-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/202312022055.x0lPITvL-lkp@intel.com/

sparse warnings: (new ones prefixed by >>)
   kernel/events/core.c:518:26: sparse: sparse: function 'perf_pmu_name' with external linkage has definition
   kernel/events/core.c:891:1: sparse: sparse: symbol 'perf_cgroup_switch' was not declared. Should it be static?
   kernel/events/core.c:993:22: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got int * @@
   kernel/events/core.c:993:22: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:993:22: sparse:     got int *
   kernel/events/core.c:1000:22: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got int * @@
   kernel/events/core.c:1000:22: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:1000:22: sparse:     got int *
   kernel/events/core.c:2783:34: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:2783:34: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:2783:34: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:3571:26: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:3571:26: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:3571:26: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:5913:26: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:5913:26: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:5913:26: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:6012:43: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:6012:43: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:6012:43: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:8237:35: sparse: sparse: incorrect type in return expression (different address spaces) @@     expected struct perf_cpu_context [noderef] <asn:3> * @@     got struct perf_cpu_context *[noderef] pmu_cpu_context @@
   kernel/events/core.c:8237:35: sparse:     expected struct perf_cpu_context [noderef] <asn:3> *
   kernel/events/core.c:8237:35: sparse:     got struct perf_cpu_context *[noderef] pmu_cpu_context
   kernel/events/core.c:8250:26: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:8250:26: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:8250:26: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:8272:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void [noderef] <asn:3> *__pdata @@     got struct perf_cpu_context *[noderef] pmu_cpu_context @@
   kernel/events/core.c:8272:24: sparse:     expected void [noderef] <asn:3> *__pdata
   kernel/events/core.c:8272:24: sparse:     got struct perf_cpu_context *[noderef] pmu_cpu_context
>> kernel/events/core.c:8288:1: sparse: sparse: symbol 'dev_attr_nr_addr_filters' was not declared. Should it be static?
   kernel/events/core.c:8339:26: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:8339:26: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:8339:26: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:8418:32: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int *[noderef] pmu_disable_count @@     got int [noderef] <asn:3> * @@
   kernel/events/core.c:8418:32: sparse:     expected int *[noderef] pmu_disable_count
   kernel/events/core.c:8418:32: sparse:     got int [noderef] <asn:3> *
   kernel/events/core.c:8452:30: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct perf_cpu_context *[noderef] pmu_cpu_context @@     got struct perf_cpu_context [noderef] <asn:3> * @@
   kernel/events/core.c:8452:30: sparse:     expected struct perf_cpu_context *[noderef] pmu_cpu_context
   kernel/events/core.c:8452:30: sparse:     got struct perf_cpu_context [noderef] <asn:3> *
   kernel/events/core.c:8457:30: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct perf_cpu_context *[noderef] pmu_cpu_context @@     got struct perf_cpu_context [noderef] <asn:3> * @@
   kernel/events/core.c:8457:30: sparse:     expected struct perf_cpu_context *[noderef] pmu_cpu_context
   kernel/events/core.c:8457:30: sparse:     got struct perf_cpu_context [noderef] <asn:3> *
   kernel/events/core.c:8464:26: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:8464:26: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:8464:26: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:8518:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void [noderef] <asn:3> *__pdata @@     got int *[noderef] pmu_disable_count @@
   kernel/events/core.c:8518:24: sparse:     expected void [noderef] <asn:3> *__pdata
   kernel/events/core.c:8518:24: sparse:     got int *[noderef] pmu_disable_count
   kernel/events/core.c:8536:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void [noderef] <asn:3> *__pdata @@     got int *[noderef] pmu_disable_count @@
   kernel/events/core.c:8536:24: sparse:     expected void [noderef] <asn:3> *__pdata
   kernel/events/core.c:8536:24: sparse:     got int *[noderef] pmu_disable_count
   kernel/events/core.c:9587:20: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:9587:20: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:9587:20: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:9588:20: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:9588:20: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:9588:20: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:152:9: sparse: sparse: context imbalance in 'perf_ctx_lock' - wrong count at exit
   kernel/events/core.c:160:17: sparse: sparse: context imbalance in 'perf_ctx_unlock' - unexpected unlock
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:993:22: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:1000:22: sparse: sparse: dereference of noderef expression
   kernel/events/core.c: note: in included file (through include/linux/rculist.h, include/linux/dcache.h, include/linux/fs.h):
   include/linux/rcupdate.h:924:9: sparse: sparse: context imbalance in 'perf_lock_task_context' - different lock contexts for basic block
   kernel/events/core.c:1281:17: sparse: sparse: context imbalance in 'perf_pin_task_context' - unexpected unlock
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:2191:9: sparse: sparse: context imbalance in '__perf_install_in_context' - wrong count at exit
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:2783:34: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:3571:26: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:3602:17: sparse: sparse: context imbalance in 'find_get_context' - unexpected unlock
   kernel/events/core.c: note: in included file:
   kernel/events/internal.h:188:1: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void const [noderef] <asn:1> *from @@     got void const *buf @@
   kernel/events/internal.h:188:1: sparse:     expected void const [noderef] <asn:1> *from
   kernel/events/internal.h:188:1: sparse:     got void const *buf
   kernel/events/internal.h:162:1: sparse: sparse: self-comparison always evaluates to true
   kernel/events/internal.h:162:1: sparse: sparse: self-comparison always evaluates to true
   kernel/events/internal.h:162:1: sparse: sparse: self-comparison always evaluates to true
   kernel/events/internal.h:162:1: sparse: sparse: self-comparison always evaluates to true
   kernel/events/internal.h:162:1: sparse: sparse: self-comparison always evaluates to true
   kernel/events/internal.h:162:1: sparse: sparse: self-comparison always evaluates to true
   kernel/events/core.c:5913:26: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:5924:17: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:6012:43: sparse: sparse: dereference of noderef expression
   kernel/events/internal.h:162:1: sparse: sparse: self-comparison always evaluates to true
   kernel/events/internal.h:162:1: sparse: sparse: self-comparison always evaluates to true
   kernel/events/core.c:8237:32: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8250:26: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8266:21: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8266:43: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8272:21: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8339:26: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8419:14: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8453:13: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8458:14: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8464:26: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8518:21: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8536:21: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:9587:20: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:9588:20: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   In file included from include/linux/kobject.h:21,

vim +/dev_attr_nr_addr_filters +8288 kernel/events/core.c

  8276	
  8277	/*
  8278	 * Let userspace know that this PMU supports address range filtering:
  8279	 */
  8280	static ssize_t nr_addr_filters_show(struct device *dev,
  8281					    struct device_attribute *attr,
  8282					    char *page)
  8283	{
  8284		struct pmu *pmu = dev_get_drvdata(dev);
  8285	
  8286		return snprintf(page, PAGE_SIZE - 1, "%d\n", pmu->nr_addr_filters);
  8287	}
> 8288	DEVICE_ATTR_RO(nr_addr_filters);
  8289	

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

^ permalink raw reply	[flat|nested] 4+ messages in thread
* kernel/events/core.c:8288:1: sparse: sparse: symbol 'dev_attr_nr_addr_filters' was not declared. Should it be static?
@ 2023-11-18 15:54 kernel test robot
  0 siblings, 0 replies; 4+ messages in thread
From: kernel test robot @ 2023-11-18 15:54 UTC (permalink / raw)
  To: Alexander Shishkin
  Cc: oe-kbuild-all, linux-kernel, Ingo Molnar, Peter Zijlstra (Intel)

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   791c8ab095f71327899023223940dd52257a4173
commit: 6e855cd4f4b5258016cf707f94f96bfa51c32f32 perf/core: Let userspace know if the PMU supports address filters
date:   8 years ago
config: x86_64-allnoconfig (https://download.01.org/0day-ci/archive/20231118/202311182331.kPsYeQPH-lkp@intel.com/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231118/202311182331.kPsYeQPH-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/202311182331.kPsYeQPH-lkp@intel.com/

sparse warnings: (new ones prefixed by >>)
   kernel/events/core.c:518:26: sparse: sparse: function 'perf_pmu_name' with external linkage has definition
   kernel/events/core.c:891:1: sparse: sparse: symbol 'perf_cgroup_switch' was not declared. Should it be static?
   kernel/events/core.c:993:22: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got int * @@
   kernel/events/core.c:993:22: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:993:22: sparse:     got int *
   kernel/events/core.c:1000:22: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got int * @@
   kernel/events/core.c:1000:22: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:1000:22: sparse:     got int *
   kernel/events/core.c:2783:34: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:2783:34: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:2783:34: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:3571:26: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:3571:26: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:3571:26: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:5913:26: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:5913:26: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:5913:26: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:6012:43: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:6012:43: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:6012:43: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:8237:35: sparse: sparse: incorrect type in return expression (different address spaces) @@     expected struct perf_cpu_context [noderef] <asn:3> * @@     got struct perf_cpu_context *[noderef] pmu_cpu_context @@
   kernel/events/core.c:8237:35: sparse:     expected struct perf_cpu_context [noderef] <asn:3> *
   kernel/events/core.c:8237:35: sparse:     got struct perf_cpu_context *[noderef] pmu_cpu_context
   kernel/events/core.c:8250:26: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:8250:26: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:8250:26: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:8272:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void [noderef] <asn:3> *__pdata @@     got struct perf_cpu_context *[noderef] pmu_cpu_context @@
   kernel/events/core.c:8272:24: sparse:     expected void [noderef] <asn:3> *__pdata
   kernel/events/core.c:8272:24: sparse:     got struct perf_cpu_context *[noderef] pmu_cpu_context
>> kernel/events/core.c:8288:1: sparse: sparse: symbol 'dev_attr_nr_addr_filters' was not declared. Should it be static?
   kernel/events/core.c:8339:26: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:8339:26: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:8339:26: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:8418:32: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int *[noderef] pmu_disable_count @@     got int [noderef] <asn:3> * @@
   kernel/events/core.c:8418:32: sparse:     expected int *[noderef] pmu_disable_count
   kernel/events/core.c:8418:32: sparse:     got int [noderef] <asn:3> *
   kernel/events/core.c:8452:30: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct perf_cpu_context *[noderef] pmu_cpu_context @@     got struct perf_cpu_context [noderef] <asn:3> * @@
   kernel/events/core.c:8452:30: sparse:     expected struct perf_cpu_context *[noderef] pmu_cpu_context
   kernel/events/core.c:8452:30: sparse:     got struct perf_cpu_context [noderef] <asn:3> *
   kernel/events/core.c:8457:30: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct perf_cpu_context *[noderef] pmu_cpu_context @@     got struct perf_cpu_context [noderef] <asn:3> * @@
   kernel/events/core.c:8457:30: sparse:     expected struct perf_cpu_context *[noderef] pmu_cpu_context
   kernel/events/core.c:8457:30: sparse:     got struct perf_cpu_context [noderef] <asn:3> *
   kernel/events/core.c:8464:26: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:8464:26: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:8464:26: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:8518:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void [noderef] <asn:3> *__pdata @@     got int *[noderef] pmu_disable_count @@
   kernel/events/core.c:8518:24: sparse:     expected void [noderef] <asn:3> *__pdata
   kernel/events/core.c:8518:24: sparse:     got int *[noderef] pmu_disable_count
   kernel/events/core.c:8536:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void [noderef] <asn:3> *__pdata @@     got int *[noderef] pmu_disable_count @@
   kernel/events/core.c:8536:24: sparse:     expected void [noderef] <asn:3> *__pdata
   kernel/events/core.c:8536:24: sparse:     got int *[noderef] pmu_disable_count
   kernel/events/core.c:9587:20: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:9587:20: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:9587:20: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:9588:20: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:9588:20: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:9588:20: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:152:9: sparse: sparse: context imbalance in 'perf_ctx_lock' - wrong count at exit
   kernel/events/core.c:160:17: sparse: sparse: context imbalance in 'perf_ctx_unlock' - unexpected unlock
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:993:22: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:1000:22: sparse: sparse: dereference of noderef expression
   kernel/events/core.c: note: in included file (through include/linux/rculist.h, include/linux/dcache.h, include/linux/fs.h):
   include/linux/rcupdate.h:924:9: sparse: sparse: context imbalance in 'perf_lock_task_context' - different lock contexts for basic block
   kernel/events/core.c:1281:17: sparse: sparse: context imbalance in 'perf_pin_task_context' - unexpected unlock
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:2191:9: sparse: sparse: context imbalance in '__perf_install_in_context' - wrong count at exit
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:2783:34: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:3571:26: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:3602:17: sparse: sparse: context imbalance in 'find_get_context' - unexpected unlock
   kernel/events/core.c: note: in included file:
   kernel/events/internal.h:188:1: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void const [noderef] <asn:1> *from @@     got void const *buf @@
   kernel/events/internal.h:188:1: sparse:     expected void const [noderef] <asn:1> *from
   kernel/events/internal.h:188:1: sparse:     got void const *buf
   kernel/events/internal.h:162:1: sparse: sparse: self-comparison always evaluates to true
   kernel/events/internal.h:162:1: sparse: sparse: self-comparison always evaluates to true
   kernel/events/internal.h:162:1: sparse: sparse: self-comparison always evaluates to true
   kernel/events/internal.h:162:1: sparse: sparse: self-comparison always evaluates to true
   kernel/events/internal.h:162:1: sparse: sparse: self-comparison always evaluates to true
   kernel/events/internal.h:162:1: sparse: sparse: self-comparison always evaluates to true
   kernel/events/core.c:5913:26: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:5924:17: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:6012:43: sparse: sparse: dereference of noderef expression
   kernel/events/internal.h:162:1: sparse: sparse: self-comparison always evaluates to true
   kernel/events/internal.h:162:1: sparse: sparse: self-comparison always evaluates to true
   kernel/events/core.c:8237:32: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8250:26: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8266:21: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8266:43: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8272:21: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8339:26: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8419:14: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8453:13: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8458:14: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8464:26: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8518:21: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8536:21: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:9587:20: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:9588:20: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   In file included from include/linux/kobject.h:21,

vim +/dev_attr_nr_addr_filters +8288 kernel/events/core.c

  8276	
  8277	/*
  8278	 * Let userspace know that this PMU supports address range filtering:
  8279	 */
  8280	static ssize_t nr_addr_filters_show(struct device *dev,
  8281					    struct device_attribute *attr,
  8282					    char *page)
  8283	{
  8284		struct pmu *pmu = dev_get_drvdata(dev);
  8285	
  8286		return snprintf(page, PAGE_SIZE - 1, "%d\n", pmu->nr_addr_filters);
  8287	}
> 8288	DEVICE_ATTR_RO(nr_addr_filters);
  8289	

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

^ permalink raw reply	[flat|nested] 4+ messages in thread
* kernel/events/core.c:8288:1: sparse: sparse: symbol 'dev_attr_nr_addr_filters' was not declared. Should it be static?
@ 2023-11-11  0:42 kernel test robot
  0 siblings, 0 replies; 4+ messages in thread
From: kernel test robot @ 2023-11-11  0:42 UTC (permalink / raw)
  To: Alexander Shishkin
  Cc: oe-kbuild-all, linux-kernel, Ingo Molnar, Peter Zijlstra (Intel)

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   18553507f60f4f51f071644621a58836eb59e28c
commit: 6e855cd4f4b5258016cf707f94f96bfa51c32f32 perf/core: Let userspace know if the PMU supports address filters
date:   8 years ago
config: x86_64-allnoconfig (https://download.01.org/0day-ci/archive/20231111/202311110824.gykVW4Cq-lkp@intel.com/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231111/202311110824.gykVW4Cq-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/202311110824.gykVW4Cq-lkp@intel.com/

sparse warnings: (new ones prefixed by >>)
   kernel/events/core.c:518:26: sparse: sparse: function 'perf_pmu_name' with external linkage has definition
   kernel/events/core.c:891:1: sparse: sparse: symbol 'perf_cgroup_switch' was not declared. Should it be static?
   kernel/events/core.c:993:22: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got int * @@
   kernel/events/core.c:993:22: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:993:22: sparse:     got int *
   kernel/events/core.c:1000:22: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got int * @@
   kernel/events/core.c:1000:22: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:1000:22: sparse:     got int *
   kernel/events/core.c:2783:34: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:2783:34: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:2783:34: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:3571:26: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:3571:26: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:3571:26: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:5913:26: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:5913:26: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:5913:26: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:6012:43: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:6012:43: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:6012:43: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:8237:35: sparse: sparse: incorrect type in return expression (different address spaces) @@     expected struct perf_cpu_context [noderef] <asn:3> * @@     got struct perf_cpu_context *[noderef] pmu_cpu_context @@
   kernel/events/core.c:8237:35: sparse:     expected struct perf_cpu_context [noderef] <asn:3> *
   kernel/events/core.c:8237:35: sparse:     got struct perf_cpu_context *[noderef] pmu_cpu_context
   kernel/events/core.c:8250:26: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:8250:26: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:8250:26: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:8272:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void [noderef] <asn:3> *__pdata @@     got struct perf_cpu_context *[noderef] pmu_cpu_context @@
   kernel/events/core.c:8272:24: sparse:     expected void [noderef] <asn:3> *__pdata
   kernel/events/core.c:8272:24: sparse:     got struct perf_cpu_context *[noderef] pmu_cpu_context
>> kernel/events/core.c:8288:1: sparse: sparse: symbol 'dev_attr_nr_addr_filters' was not declared. Should it be static?
   kernel/events/core.c:8339:26: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:8339:26: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:8339:26: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:8418:32: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int *[noderef] pmu_disable_count @@     got int [noderef] <asn:3> * @@
   kernel/events/core.c:8418:32: sparse:     expected int *[noderef] pmu_disable_count
   kernel/events/core.c:8418:32: sparse:     got int [noderef] <asn:3> *
   kernel/events/core.c:8452:30: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct perf_cpu_context *[noderef] pmu_cpu_context @@     got struct perf_cpu_context [noderef] <asn:3> * @@
   kernel/events/core.c:8452:30: sparse:     expected struct perf_cpu_context *[noderef] pmu_cpu_context
   kernel/events/core.c:8452:30: sparse:     got struct perf_cpu_context [noderef] <asn:3> *
   kernel/events/core.c:8457:30: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct perf_cpu_context *[noderef] pmu_cpu_context @@     got struct perf_cpu_context [noderef] <asn:3> * @@
   kernel/events/core.c:8457:30: sparse:     expected struct perf_cpu_context *[noderef] pmu_cpu_context
   kernel/events/core.c:8457:30: sparse:     got struct perf_cpu_context [noderef] <asn:3> *
   kernel/events/core.c:8464:26: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:8464:26: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:8464:26: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:8518:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void [noderef] <asn:3> *__pdata @@     got int *[noderef] pmu_disable_count @@
   kernel/events/core.c:8518:24: sparse:     expected void [noderef] <asn:3> *__pdata
   kernel/events/core.c:8518:24: sparse:     got int *[noderef] pmu_disable_count
   kernel/events/core.c:8536:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void [noderef] <asn:3> *__pdata @@     got int *[noderef] pmu_disable_count @@
   kernel/events/core.c:8536:24: sparse:     expected void [noderef] <asn:3> *__pdata
   kernel/events/core.c:8536:24: sparse:     got int *[noderef] pmu_disable_count
   kernel/events/core.c:9587:20: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:9587:20: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:9587:20: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:9588:20: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:9588:20: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:9588:20: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:152:9: sparse: sparse: context imbalance in 'perf_ctx_lock' - wrong count at exit
   kernel/events/core.c:160:17: sparse: sparse: context imbalance in 'perf_ctx_unlock' - unexpected unlock
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:993:22: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:1000:22: sparse: sparse: dereference of noderef expression
   kernel/events/core.c: note: in included file (through include/linux/rculist.h, include/linux/dcache.h, include/linux/fs.h):
   include/linux/rcupdate.h:924:9: sparse: sparse: context imbalance in 'perf_lock_task_context' - different lock contexts for basic block
   kernel/events/core.c:1281:17: sparse: sparse: context imbalance in 'perf_pin_task_context' - unexpected unlock
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:2191:9: sparse: sparse: context imbalance in '__perf_install_in_context' - wrong count at exit
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:2783:34: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:3571:26: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:3602:17: sparse: sparse: context imbalance in 'find_get_context' - unexpected unlock
   kernel/events/core.c: note: in included file:
   kernel/events/internal.h:188:1: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void const [noderef] <asn:1> *from @@     got void const *buf @@
   kernel/events/internal.h:188:1: sparse:     expected void const [noderef] <asn:1> *from
   kernel/events/internal.h:188:1: sparse:     got void const *buf
   kernel/events/core.c:5913:26: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:5924:17: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:6012:43: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8237:32: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8250:26: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8266:21: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8266:43: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8272:21: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8339:26: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8419:14: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8453:13: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8458:14: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8464:26: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8518:21: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:8536:21: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:9587:20: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:9588:20: sparse: sparse: dereference of noderef expression
   kernel/events/core.c:145:16: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void const [noderef] <asn:3> *__vpp_verify @@     got struct perf_cpu_context * @@
   kernel/events/core.c:145:16: sparse:     expected void const [noderef] <asn:3> *__vpp_verify
   kernel/events/core.c:145:16: sparse:     got struct perf_cpu_context *
   kernel/events/core.c:145:16: sparse: sparse: dereference of noderef expression
   In file included from include/linux/kobject.h:21,
                    from include/linux/device.h:17,
                    from include/linux/node.h:17,
                    from include/linux/cpu.h:16,
                    from kernel/events/core.c:14:
   include/linux/sysfs.h: In function 'sysfs_get_dirent':
   include/linux/sysfs.h:517:44: warning: pointer targets in passing argument 2 of 'kernfs_find_and_get' differ in signedness [-Wpointer-sign]
     517 |         return kernfs_find_and_get(parent, name);
         |                                            ^~~~

vim +/dev_attr_nr_addr_filters +8288 kernel/events/core.c

  8223	
  8224	/*
  8225	 * Ensures all contexts with the same task_ctx_nr have the same
  8226	 * pmu_cpu_context too.
  8227	 */
  8228	static struct perf_cpu_context __percpu *find_pmu_context(int ctxn)
  8229	{
  8230		struct pmu *pmu;
  8231	
  8232		if (ctxn < 0)
  8233			return NULL;
  8234	
  8235		list_for_each_entry(pmu, &pmus, entry) {
  8236			if (pmu->task_ctx_nr == ctxn)
> 8237				return pmu->pmu_cpu_context;
  8238		}
  8239	
  8240		return NULL;
  8241	}
  8242	
  8243	static void update_pmu_context(struct pmu *pmu, struct pmu *old_pmu)
  8244	{
  8245		int cpu;
  8246	
  8247		for_each_possible_cpu(cpu) {
  8248			struct perf_cpu_context *cpuctx;
  8249	
  8250			cpuctx = per_cpu_ptr(pmu->pmu_cpu_context, cpu);
  8251	
  8252			if (cpuctx->unique_pmu == old_pmu)
  8253				cpuctx->unique_pmu = pmu;
  8254		}
  8255	}
  8256	
  8257	static void free_pmu_context(struct pmu *pmu)
  8258	{
  8259		struct pmu *i;
  8260	
  8261		mutex_lock(&pmus_lock);
  8262		/*
  8263		 * Like a real lame refcount.
  8264		 */
  8265		list_for_each_entry(i, &pmus, entry) {
  8266			if (i->pmu_cpu_context == pmu->pmu_cpu_context) {
  8267				update_pmu_context(i, pmu);
  8268				goto out;
  8269			}
  8270		}
  8271	
  8272		free_percpu(pmu->pmu_cpu_context);
  8273	out:
  8274		mutex_unlock(&pmus_lock);
  8275	}
  8276	
  8277	/*
  8278	 * Let userspace know that this PMU supports address range filtering:
  8279	 */
  8280	static ssize_t nr_addr_filters_show(struct device *dev,
  8281					    struct device_attribute *attr,
  8282					    char *page)
  8283	{
  8284		struct pmu *pmu = dev_get_drvdata(dev);
  8285	
  8286		return snprintf(page, PAGE_SIZE - 1, "%d\n", pmu->nr_addr_filters);
  8287	}
> 8288	DEVICE_ATTR_RO(nr_addr_filters);
  8289	

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

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2023-12-03  6:34 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-12-03  6:31 kernel/events/core.c:8288:1: sparse: sparse: symbol 'dev_attr_nr_addr_filters' was not declared. Should it be static? kernel test robot
  -- strict thread matches above, loose matches on Subject: below --
2023-12-03  6:31 kernel test robot
2023-11-18 15:54 kernel test robot
2023-11-11  0:42 kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox