[zen:7.2/prjc 648/740] kernel/sched/alt_core.c:2505:36: sparse: sparse: incorrect type in argument 1 (different address spaces)

kernel test robot <[email protected]>
Newsgroups dev.linux.lists.oe-kbuild-all
Message-ID <[email protected]>
Hi Alfred,

First bad commit (maybe != root cause):

tree:   https://github.com/zen-kernel/zen-kernel 7.2/prjc
head:   b735d8ec47d31db8e62d1925521a44d98c1cac2d
commit: ca8e0fde64fcfaf8691f1aa16d875770a5896ca5 [648/740] sched/alt: [Sync] dcb7416212e6 block: invalidate cached plug timestamp after task switch
config: parisc-randconfig-r121-20260819 (https://download.01.org/0day-ci/archive/20260819/[email protected]/config)
compiler: hppa-linux-gcc (GCC) 16.1.0
sparse: v0.6.5-rc1
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260819/[email protected]/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 <[email protected]>
| Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/

sparse warnings: (new ones prefixed by >>)
   kernel/sched/alt_core.c:109:1: sparse: sparse: symbol '__pcpu_scope_sched_cpu_topo_end_mask' was not declared. Should it be static?
>> kernel/sched/alt_core.c:2505:36: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected struct task_struct const *p @@     got struct task_struct [noderef] __rcu *curr @@
   kernel/sched/alt_core.c:2505:36: sparse:     expected struct task_struct const *p
   kernel/sched/alt_core.c:2505:36: sparse:     got struct task_struct [noderef] __rcu *curr
>> kernel/sched/alt_core.c:5859:43: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected struct task_struct *push_task @@     got struct task_struct [noderef] __rcu *curr @@
   kernel/sched/alt_core.c:5859:43: sparse:     expected struct task_struct *push_task
   kernel/sched/alt_core.c:5859:43: sparse:     got struct task_struct [noderef] __rcu *curr
>> kernel/sched/alt_core.c:3916:15: sparse: sparse: incompatible types in comparison expression (different address spaces):
   kernel/sched/alt_core.c:3916:15: sparse:    struct task_struct *
   kernel/sched/alt_core.c:3916:15: sparse:    struct task_struct [noderef] __rcu *
>> kernel/sched/alt_core.c:4000:38: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected struct task_struct *curr @@     got struct task_struct [noderef] __rcu *curr @@
   kernel/sched/alt_core.c:4000:38: sparse:     expected struct task_struct *curr
   kernel/sched/alt_core.c:4000:38: sparse:     got struct task_struct [noderef] __rcu *curr
>> kernel/sched/alt_core.c:4644:14: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct task_struct *prev @@     got struct task_struct [noderef] __rcu *curr @@
   kernel/sched/alt_core.c:4644:14: sparse:     expected struct task_struct *prev
   kernel/sched/alt_core.c:4644:14: sparse:     got struct task_struct [noderef] __rcu *curr
   kernel/sched/alt_core.c:5170:17: sparse: sparse: incompatible types in comparison expression (different address spaces):
   kernel/sched/alt_core.c:5170:17: sparse:    struct task_struct *
   kernel/sched/alt_core.c:5170:17: sparse:    struct task_struct [noderef] __rcu *
>> kernel/sched/alt_core.c:5716:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected struct task_struct *p @@     got struct task_struct [noderef] __rcu *curr @@
   kernel/sched/alt_core.c:5716:25: sparse:     expected struct task_struct *p
   kernel/sched/alt_core.c:5716:25: sparse:     got struct task_struct [noderef] __rcu *curr
   kernel/sched/alt_core.c:923:38: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected struct task_struct *curr @@     got struct task_struct [noderef] __rcu *curr @@
   kernel/sched/alt_core.c:923:38: sparse:     expected struct task_struct *curr
   kernel/sched/alt_core.c:923:38: sparse:     got struct task_struct [noderef] __rcu *curr
   kernel/sched/alt_core.c:923:38: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected struct task_struct *curr @@     got struct task_struct [noderef] __rcu *curr @@
   kernel/sched/alt_core.c:923:38: sparse:     expected struct task_struct *curr
   kernel/sched/alt_core.c:923:38: sparse:     got struct task_struct [noderef] __rcu *curr
   kernel/sched/alt_core.c:1141:37: sparse: sparse: incompatible types in comparison expression (different address spaces):
   kernel/sched/alt_core.c:1141:37: sparse:    struct task_struct *
   kernel/sched/alt_core.c:1141:37: sparse:    struct task_struct [noderef] __rcu *
   kernel/sched/alt_core.c:1831:38: sparse: sparse: incompatible types in comparison expression (different address spaces):
   kernel/sched/alt_core.c:1831:38: sparse:    struct task_struct [noderef] __rcu *
   kernel/sched/alt_core.c:1831:38: sparse:    struct task_struct const *
   kernel/sched/alt_core.c:1141:37: sparse: sparse: incompatible types in comparison expression (different address spaces):
   kernel/sched/alt_core.c:1141:37: sparse:    struct task_struct *
   kernel/sched/alt_core.c:1141:37: sparse:    struct task_struct [noderef] __rcu *
   kernel/sched/alt_core.c:1141:37: sparse: sparse: incompatible types in comparison expression (different address spaces):
   kernel/sched/alt_core.c:1141:37: sparse:    struct task_struct *
   kernel/sched/alt_core.c:1141:37: sparse:    struct task_struct [noderef] __rcu *
   kernel/sched/alt_core.c:1141:37: sparse: sparse: incompatible types in comparison expression (different address spaces):
   kernel/sched/alt_core.c:1141:37: sparse:    struct task_struct *
   kernel/sched/alt_core.c:1141:37: sparse:    struct task_struct [noderef] __rcu *
   kernel/sched/alt_core.c:1141:37: sparse: sparse: incompatible types in comparison expression (different address spaces):
   kernel/sched/alt_core.c:1141:37: sparse:    struct task_struct *
   kernel/sched/alt_core.c:1141:37: sparse:    struct task_struct [noderef] __rcu *
   kernel/sched/alt_core.c: note: in included file (through kernel/sched/sched.h):
   kernel/sched/alt_sched.h:333:25: sparse: sparse: incompatible types in comparison expression (different address spaces):
   kernel/sched/alt_sched.h:333:25: sparse:    struct task_struct [noderef] __rcu *
   kernel/sched/alt_sched.h:333:25: sparse:    struct task_struct *
   kernel/sched/alt_core.c:1141:37: sparse: sparse: incompatible types in comparison expression (different address spaces):
   kernel/sched/alt_core.c:1141:37: sparse:    struct task_struct *
   kernel/sched/alt_core.c:1141:37: sparse:    struct task_struct [noderef] __rcu *
   kernel/sched/alt_sched.h:333:25: sparse: sparse: incompatible types in comparison expression (different address spaces):
   kernel/sched/alt_sched.h:333:25: sparse:    struct task_struct [noderef] __rcu *
   kernel/sched/alt_sched.h:333:25: sparse:    struct task_struct *
   kernel/sched/alt_core.c:1141:37: sparse: sparse: incompatible types in comparison expression (different address spaces):
   kernel/sched/alt_core.c:1141:37: sparse:    struct task_struct *
   kernel/sched/alt_core.c:1141:37: sparse:    struct task_struct [noderef] __rcu *

vim +2505 kernel/sched/alt_core.c

af93eb24c6d418 Alfred Chen 2020-07-31  2497  
2f7ec82370cbb7 Alfred Chen 2019-08-19  2498  void wake_up_if_idle(int cpu)
2f7ec82370cbb7 Alfred Chen 2019-08-19  2499  {
2f7ec82370cbb7 Alfred Chen 2019-08-19  2500  	struct rq *rq = cpu_rq(cpu);
2f7ec82370cbb7 Alfred Chen 2019-08-19  2501  
df026c771d2990 Alfred Chen 2024-01-05  2502  	guard(rcu)();
df026c771d2990 Alfred Chen 2024-01-05  2503  	if (is_idle_task(rcu_dereference(rq->curr))) {
df026c771d2990 Alfred Chen 2024-01-05  2504  		guard(raw_spinlock_irqsave)(&rq->lock);
2f7ec82370cbb7 Alfred Chen 2019-08-19 @2505  		if (is_idle_task(rq->curr))
cf9228cdcb66d4 Alfred Chen 2022-03-26  2506  			resched_curr(rq);
df026c771d2990 Alfred Chen 2024-01-05  2507  	}
2f7ec82370cbb7 Alfred Chen 2019-08-19  2508  }
2f7ec82370cbb7 Alfred Chen 2019-08-19  2509  

:::::: The code at line 2505 was first introduced by commit
:::::: 2f7ec82370cbb705e7e10f67ae48bb5f5033deb4 Project C v5.7.5-r2

:::::: TO: Alfred Chen <[email protected]>
:::::: CC: Alfred Chen <[email protected]>

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.