All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Kumar Kartikeya Dwivedi <memxor@gmail.com>
Cc: oe-kbuild-all@lists.linux.dev
Subject: [kkdwivedi:fermata 47/49] kernel/sched/psi.c:1743:17: sparse: sparse: symbol 'bpf_psi_total' was not declared. Should it be static?
Date: Fri, 02 Oct 2026 17:52:10 +0200	[thread overview]
Message-ID: <202610021733.EeeBI3cf-lkp@intel.com> (raw)

tree:   https://github.com/kkdwivedi/linux fermata
head:   babde5051be3840becf5a78de91a0b68a99f0e49
commit: 280ac9dc2846a4a9c68adefea007239b3642d07f [47/49] bpf: Add bpf_psi_total() to read a cgroup's stall time
config: um-randconfig-r2307-20261001 (https://download.01.org/0day-ci/archive/20261002/202610021733.EeeBI3cf-lkp@intel.com/config)
compiler: gcc-12 (Debian 12.4.0-5) 12.4.0
sparse: v0.6.5-rc1
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20261002/202610021733.EeeBI3cf-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/202610021733.EeeBI3cf-lkp@intel.com/

sparse warnings: (new ones prefixed by >>)
   kernel/sched/topology.c:118:56: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected struct sched_domain *sd @@     got struct sched_domain [noderef] __rcu *child @@
   kernel/sched/topology.c:118:56: sparse:     expected struct sched_domain *sd
   kernel/sched/topology.c:118:56: sparse:     got struct sched_domain [noderef] __rcu *child
   kernel/sched/topology.c:137:60: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected struct sched_domain *sd @@     got struct sched_domain [noderef] __rcu *parent @@
   kernel/sched/topology.c:137:60: sparse:     expected struct sched_domain *sd
   kernel/sched/topology.c:137:60: sparse:     got struct sched_domain [noderef] __rcu *parent
   kernel/sched/topology.c:160:20: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct sched_domain *sd @@     got struct sched_domain [noderef] __rcu *parent @@
   kernel/sched/topology.c:160:20: sparse:     expected struct sched_domain *sd
   kernel/sched/topology.c:160:20: sparse:     got struct sched_domain [noderef] __rcu *parent
   kernel/sched/topology.c:470:19: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected struct perf_domain *pd @@     got struct perf_domain [noderef] __rcu *pd @@
   kernel/sched/topology.c:470:19: sparse:     expected struct perf_domain *pd
   kernel/sched/topology.c:470:19: sparse:     got struct perf_domain [noderef] __rcu *pd
   kernel/sched/topology.c:654:49: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected struct sched_domain *parent @@     got struct sched_domain [noderef] __rcu *parent @@
   kernel/sched/topology.c:654:49: sparse:     expected struct sched_domain *parent
   kernel/sched/topology.c:654:49: sparse:     got struct sched_domain [noderef] __rcu *parent
   kernel/sched/topology.c:753:50: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected struct sched_domain *parent @@     got struct sched_domain [noderef] __rcu *parent @@
   kernel/sched/topology.c:753:50: sparse:     expected struct sched_domain *parent
   kernel/sched/topology.c:753:50: sparse:     got struct sched_domain [noderef] __rcu *parent
   kernel/sched/topology.c:775:55: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct sched_domain [noderef] __rcu *[noderef] __rcu child @@     got struct sched_domain *[assigned] tmp @@
   kernel/sched/topology.c:775:55: sparse:     expected struct sched_domain [noderef] __rcu *[noderef] __rcu child
   kernel/sched/topology.c:775:55: sparse:     got struct sched_domain *[assigned] tmp
   kernel/sched/topology.c:788:29: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct sched_domain *[assigned] tmp @@     got struct sched_domain [noderef] __rcu *parent @@
   kernel/sched/topology.c:788:29: sparse:     expected struct sched_domain *[assigned] tmp
   kernel/sched/topology.c:788:29: sparse:     got struct sched_domain [noderef] __rcu *parent
   kernel/sched/topology.c:793:20: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct sched_domain *sd @@     got struct sched_domain [noderef] __rcu *parent @@
   kernel/sched/topology.c:793:20: sparse:     expected struct sched_domain *sd
   kernel/sched/topology.c:793:20: sparse:     got struct sched_domain [noderef] __rcu *parent
   kernel/sched/topology.c:826:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct sched_domain *[assigned] tmp @@     got struct sched_domain [noderef] __rcu *sd @@
   kernel/sched/topology.c:826:13: sparse:     expected struct sched_domain *[assigned] tmp
   kernel/sched/topology.c:826:13: sparse:     got struct sched_domain [noderef] __rcu *sd
   kernel/sched/topology.c:1069:38: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected struct sched_domain *sdp @@     got struct sched_domain [noderef] __rcu *parent @@
   kernel/sched/topology.c:1069:38: sparse:     expected struct sched_domain *sdp
   kernel/sched/topology.c:1069:38: sparse:     got struct sched_domain [noderef] __rcu *parent
   kernel/sched/topology.c:1076:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct sched_domain *sdp @@     got struct sched_domain [noderef] __rcu *parent @@
   kernel/sched/topology.c:1076:21: sparse:     expected struct sched_domain *sdp
   kernel/sched/topology.c:1076:21: sparse:     got struct sched_domain [noderef] __rcu *parent
   kernel/sched/topology.c:1223:70: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected struct sched_domain *sd @@     got struct sched_domain [noderef] __rcu *child @@
   kernel/sched/topology.c:1223:70: sparse:     expected struct sched_domain *sd
   kernel/sched/topology.c:1223:70: sparse:     got struct sched_domain [noderef] __rcu *child
   kernel/sched/topology.c:1252:59: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected struct sched_domain *sd @@     got struct sched_domain [noderef] __rcu *child @@
   kernel/sched/topology.c:1252:59: sparse:     expected struct sched_domain *sd
   kernel/sched/topology.c:1252:59: sparse:     got struct sched_domain [noderef] __rcu *child
   kernel/sched/topology.c:1298:57: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected struct sched_domain *sd @@     got struct sched_domain [noderef] __rcu *child @@
   kernel/sched/topology.c:1298:57: sparse:     expected struct sched_domain *sd
   kernel/sched/topology.c:1298:57: sparse:     got struct sched_domain [noderef] __rcu *child
   kernel/sched/topology.c:1300:25: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct sched_domain *sibling @@     got struct sched_domain [noderef] __rcu *child @@
   kernel/sched/topology.c:1300:25: sparse:     expected struct sched_domain *sibling
   kernel/sched/topology.c:1300:25: sparse:     got struct sched_domain [noderef] __rcu *child
   kernel/sched/topology.c:1308:55: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected struct sched_domain *sd @@     got struct sched_domain [noderef] __rcu *child @@
   kernel/sched/topology.c:1308:55: sparse:     expected struct sched_domain *sd
   kernel/sched/topology.c:1308:55: sparse:     got struct sched_domain [noderef] __rcu *child
   kernel/sched/topology.c:1310:25: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct sched_domain *sibling @@     got struct sched_domain [noderef] __rcu *child @@
   kernel/sched/topology.c:1310:25: sparse:     expected struct sched_domain *sibling
   kernel/sched/topology.c:1310:25: sparse:     got struct sched_domain [noderef] __rcu *child
   kernel/sched/topology.c:1380:62: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected struct sched_domain *sd @@     got struct sched_domain [noderef] __rcu *child @@
   kernel/sched/topology.c:1380:62: sparse:     expected struct sched_domain *sd
   kernel/sched/topology.c:1380:62: sparse:     got struct sched_domain [noderef] __rcu *child
   kernel/sched/topology.c:1484:40: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected struct sched_domain *child @@     got struct sched_domain [noderef] __rcu *child @@
   kernel/sched/topology.c:1484:40: sparse:     expected struct sched_domain *child
   kernel/sched/topology.c:1484:40: sparse:     got struct sched_domain [noderef] __rcu *child
   kernel/sched/topology.c:1620:9: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct sched_domain *[assigned] sd @@     got struct sched_domain [noderef] __rcu *parent @@
   kernel/sched/topology.c:1620:9: sparse:     expected struct sched_domain *[assigned] sd
   kernel/sched/topology.c:1620:9: sparse:     got struct sched_domain [noderef] __rcu *parent
   kernel/sched/topology.c:1877:52: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct sched_domain *[assigned] sd @@     got struct sched_domain [noderef] __rcu *parent @@
   kernel/sched/topology.c:1877:52: sparse:     expected struct sched_domain *[assigned] sd
   kernel/sched/topology.c:1877:52: sparse:     got struct sched_domain [noderef] __rcu *parent
   kernel/sched/topology.c:1987:43: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected struct sched_domain [noderef] __rcu *child @@     got struct sched_domain *child @@
   kernel/sched/topology.c:1987:43: sparse:     expected struct sched_domain [noderef] __rcu *child
   kernel/sched/topology.c:1987:43: sparse:     got struct sched_domain *child
   kernel/sched/topology.c:2791:31: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct sched_domain [noderef] __rcu *parent @@     got struct sched_domain *sd @@
   kernel/sched/topology.c:2791:31: sparse:     expected struct sched_domain [noderef] __rcu *parent
   kernel/sched/topology.c:2791:31: sparse:     got struct sched_domain *sd
   kernel/sched/topology.c:2919:16: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct sched_domain *parent @@     got struct sched_domain [noderef] __rcu *[noderef] __rcu parent @@
   kernel/sched/topology.c:2919:16: sparse:     expected struct sched_domain *parent
   kernel/sched/topology.c:2919:16: sparse:     got struct sched_domain [noderef] __rcu *[noderef] __rcu parent
   kernel/sched/topology.c:2921:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct sched_domain *parent @@     got struct sched_domain [noderef] __rcu *parent @@
   kernel/sched/topology.c:2921:24: sparse:     expected struct sched_domain *parent
   kernel/sched/topology.c:2921:24: sparse:     got struct sched_domain [noderef] __rcu *parent
   kernel/sched/topology.c:2926:16: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct sched_domain *parent @@     got struct sched_domain [noderef] __rcu *parent @@
   kernel/sched/topology.c:2926:16: sparse:     expected struct sched_domain *parent
   kernel/sched/topology.c:2926:16: sparse:     got struct sched_domain [noderef] __rcu *parent
   kernel/sched/topology.c:2931:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct sched_domain *parent @@     got struct sched_domain [noderef] __rcu *parent @@
   kernel/sched/topology.c:2931:24: sparse:     expected struct sched_domain *parent
   kernel/sched/topology.c:2931:24: sparse:     got struct sched_domain [noderef] __rcu *parent
   kernel/sched/topology.c:3008:25: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct sched_domain *[assigned] sd_asym @@     got struct sched_domain [noderef] __rcu *parent @@
   kernel/sched/topology.c:3008:25: sparse:     expected struct sched_domain *[assigned] sd_asym
   kernel/sched/topology.c:3008:25: sparse:     got struct sched_domain [noderef] __rcu *parent
   kernel/sched/topology.c:3143:57: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct sched_domain *[assigned] sd @@     got struct sched_domain [noderef] __rcu *parent @@
   kernel/sched/topology.c:3143:57: sparse:     expected struct sched_domain *[assigned] sd
   kernel/sched/topology.c:3143:57: sparse:     got struct sched_domain [noderef] __rcu *parent
   kernel/sched/topology.c:3165:28: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct sched_domain *[assigned] sd @@     got struct sched_domain [noderef] __rcu *parent @@
   kernel/sched/topology.c:3165:28: sparse:     expected struct sched_domain *[assigned] sd
   kernel/sched/topology.c:3165:28: sparse:     got struct sched_domain [noderef] __rcu *parent
   kernel/sched/topology.c:3191:57: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct sched_domain *[assigned] sd @@     got struct sched_domain [noderef] __rcu *parent @@
   kernel/sched/topology.c:3191:57: sparse:     expected struct sched_domain *[assigned] sd
   kernel/sched/topology.c:3191:57: sparse:     got struct sched_domain [noderef] __rcu *parent
   kernel/sched/topology.c:3444:44: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct sched_domain *[assigned] sd @@     got struct sched_domain [noderef] __rcu *parent @@
   kernel/sched/topology.c:3444:44: sparse:     expected struct sched_domain *[assigned] sd
   kernel/sched/topology.c:3444:44: sparse:     got struct sched_domain [noderef] __rcu *parent
   kernel/sched/build_utility.c: note: in included file:
>> kernel/sched/psi.c:1743:17: sparse: sparse: symbol 'bpf_psi_total' was not declared. Should it be static?
   kernel/sched/build_utility.c: note: in included file:
   kernel/sched/autogroup.c:10:28: sparse: sparse: symbol 'sysctl_sched_autogroup_enabled' was not declared. Should it be static?
   kernel/sched/build_utility.c: note: in included file:
   kernel/sched/sched.h:2489:25: sparse: sparse: incompatible types in comparison expression (different address spaces):
   kernel/sched/sched.h:2489:25: sparse:    struct task_struct [noderef] __rcu *
   kernel/sched/sched.h:2489:25: sparse:    struct task_struct *

vim +/bpf_psi_total +1743 kernel/sched/psi.c

  1729	
  1730	/**
  1731	 * bpf_psi_total - Read a cgroup's cumulative pressure stall time
  1732	 * @cgrp: the cgroup; the root cgroup reads the system-wide group
  1733	 * @state: the state to read, for example PSI_MEM_SOME or PSI_MEM_FULL
  1734	 *
  1735	 * Collects the per-CPU stall times first, so the result is as fresh as a
  1736	 * read of the cgroup's pressure files, whose total= field it matches. The
  1737	 * periodic aggregator alone updates the group total only every two seconds,
  1738	 * which is too coarse for a control loop that ticks faster than that.
  1739	 *
  1740	 * Return: the stall time in nanoseconds, or U64_MAX if PSI is disabled, the
  1741	 * cgroup has no PSI group, or @state is not a per-group state.
  1742	 */
> 1743	__bpf_kfunc u64 bpf_psi_total(struct cgroup *cgrp, enum psi_states state)
  1744	{
  1745		struct psi_group *group;
  1746		u64 total;
  1747	
  1748		if (static_branch_likely(&psi_disabled))
  1749			return U64_MAX;
  1750		if ((unsigned int)state >= PSI_NONIDLE)
  1751			return U64_MAX;
  1752	
  1753		group = cgroup_psi(cgrp);
  1754		if (!group)
  1755			return U64_MAX;
  1756	
  1757		mutex_lock(&group->avgs_lock);
  1758		collect_percpu_times(group, PSI_AVGS, NULL);
  1759		total = group->total[PSI_AVGS][state];
  1760		mutex_unlock(&group->avgs_lock);
  1761	
  1762		return total;
  1763	}
  1764	

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

                 reply	other threads:[~2026-10-02 15:53 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202610021733.EeeBI3cf-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=memxor@gmail.com \
    --cc=oe-kbuild-all@lists.linux.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.