lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <BL1PR11MB6003439ECD3790035E99E5AF964EA@BL1PR11MB6003.namprd11.prod.outlook.com>
Date: Tue, 8 Jul 2025 14:02:57 +0000
From: "Deng, Pan" <pan.deng@...el.com>
To: lkp <lkp@...el.com>, "peterz@...radead.org" <peterz@...radead.org>,
	"mingo@...nel.org" <mingo@...nel.org>
CC: "oe-kbuild-all@...ts.linux.dev" <oe-kbuild-all@...ts.linux.dev>,
	"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>, "Li, Tianyou"
	<tianyou.li@...el.com>, "tim.c.chen@...ux.intel.com"
	<tim.c.chen@...ux.intel.com>, "Chen, Yu C" <yu.c.chen@...el.com>
Subject: RE: [PATCH 3/4] sched/rt: Split root_domain->rto_count to
 per-NUMA-node counters

> -----Original Message-----
> From: lkp <lkp@...el.com>
> Sent: Tuesday, July 8, 2025 1:34 PM
> To: Deng, Pan <pan.deng@...el.com>; peterz@...radead.org; mingo@...nel.org
> Cc: oe-kbuild-all@...ts.linux.dev; linux-kernel@...r.kernel.org; Li, Tianyou
> <tianyou.li@...el.com>; tim.c.chen@...ux.intel.com; Chen, Yu C
> <yu.c.chen@...el.com>; Deng, Pan <pan.deng@...el.com>
> Subject: Re: [PATCH 3/4] sched/rt: Split root_domain->rto_count to per-NUMA-
> node counters
> 
> Hi Pan,
> 
> kernel test robot noticed the following build warnings:
> 
> [auto build test WARNING on v6.16-rc5]
> [also build test WARNING on linus/master] [cannot apply to tip/sched/core
> peterz-queue/sched/core tip/master tip/auto-latest next-20250704] [If your
> patch is applied to the wrong git tree, kindly drop us a note.
> And when submitting patch, we suggest to use '--base' as documented in
> https://git-scm.com/docs/git-format-patch#_base_tree_information]
> 
> url:    https://github.com/intel-lab-lkp/linux/commits/Pan-Deng/sched-rt-
> Optimize-cpupri_vec-layout-to-mitigate-cache-line-contention/20250707-131831
> base:   v6.16-rc5
> patch link:
> https://lore.kernel.org/r/2c1e1dbacaddd881f3cca340ece1f9268029b620.175185
> 2370.git.pan.deng%40intel.com
> patch subject: [PATCH 3/4] sched/rt: Split root_domain->rto_count to per-NUMA-
> node counters
> config: loongarch-randconfig-r112-20250708 (https://download.01.org/0day-
> ci/archive/20250708/202507081317.4IdE2euZ-lkp@...el.com/config)
> compiler: loongarch64-linux-gcc (GCC) 15.1.0
> reproduce: (https://download.01.org/0day-
> ci/archive/20250708/202507081317.4IdE2euZ-lkp@...el.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@...el.com>
> | Closes:
> | https://lore.kernel.org/oe-kbuild-all/202507081317.4IdE2euZ-lkp@intel.
> | com/
> 
> sparse warnings: (new ones prefixed by >>)
>    kernel/sched/rt.c:1679:45: sparse: sparse: incorrect type in argument 2
> (different address spaces) @@     expected struct task_struct *p @@     got struct
> task_struct [noderef] __rcu *donor @@
>    kernel/sched/rt.c:1679:45: sparse:     expected struct task_struct *p
>    kernel/sched/rt.c:1679:45: sparse:     got struct task_struct [noderef] __rcu
> *donor
>    kernel/sched/rt.c:1722:39: sparse: sparse: incorrect type in initializer (different
> address spaces) @@     expected struct task_struct *donor @@     got struct
> task_struct [noderef] __rcu *donor @@
>    kernel/sched/rt.c:1722:39: sparse:     expected struct task_struct *donor
>    kernel/sched/rt.c:1722:39: sparse:     got struct task_struct [noderef] __rcu
> *donor
>    kernel/sched/rt.c:1742:64: sparse: sparse: incorrect type in argument 1
> (different address spaces) @@     expected struct task_struct *tsk @@     got
> struct task_struct [noderef] __rcu *curr @@
>    kernel/sched/rt.c:1742:64: sparse:     expected struct task_struct *tsk
>    kernel/sched/rt.c:1742:64: sparse:     got struct task_struct [noderef] __rcu
> *curr
>    kernel/sched/rt.c:2084:40: sparse: sparse: incorrect type in argument 1
> (different address spaces) @@     expected struct task_struct *task @@     got
> struct task_struct [noderef] __rcu *curr @@
>    kernel/sched/rt.c:2084:40: sparse:     expected struct task_struct *task
>    kernel/sched/rt.c:2084:40: sparse:     got struct task_struct [noderef] __rcu
> *curr
>    kernel/sched/rt.c:2107:13: sparse: sparse: incompatible types in comparison
> expression (different address spaces):
>    kernel/sched/rt.c:2107:13: sparse:    struct task_struct *
>    kernel/sched/rt.c:2107:13: sparse:    struct task_struct [noderef] __rcu *
>    kernel/sched/rt.c:2453:54: sparse: sparse: incorrect type in argument 1
> (different address spaces) @@     expected struct task_struct *tsk @@     got
> struct task_struct [noderef] __rcu *curr @@
>    kernel/sched/rt.c:2453:54: sparse:     expected struct task_struct *tsk
>    kernel/sched/rt.c:2453:54: sparse:     got struct task_struct [noderef] __rcu
> *curr
>    kernel/sched/rt.c:2455:40: sparse: sparse: incorrect type in argument 1
> (different address spaces) @@     expected struct task_struct *p @@     got struct
> task_struct [noderef] __rcu *donor @@
>    kernel/sched/rt.c:2455:40: sparse:     expected struct task_struct *p
>    kernel/sched/rt.c:2455:40: sparse:     got struct task_struct [noderef] __rcu
> *donor
>    kernel/sched/rt.c:2455:62: sparse: sparse: incorrect type in argument 1
> (different address spaces) @@     expected struct task_struct *p @@     got struct
> task_struct [noderef] __rcu *donor @@
>    kernel/sched/rt.c:2455:62: sparse:     expected struct task_struct *p
>    kernel/sched/rt.c:2455:62: sparse:     got struct task_struct [noderef] __rcu
> *donor
>    kernel/sched/build_policy.c: note: in included file:
>    kernel/sched/deadline.c:2717:23: sparse: sparse: incorrect type in argument 1
> (different address spaces) @@     expected struct task_struct *p @@     got struct
> task_struct [noderef] __rcu *donor @@
>    kernel/sched/deadline.c:2717:23: sparse:     expected struct task_struct *p
>    kernel/sched/deadline.c:2717:23: sparse:     got struct task_struct [noderef]
> __rcu *donor
>    kernel/sched/deadline.c:2727:13: sparse: sparse: incompatible types in
> comparison expression (different address spaces):
>    kernel/sched/deadline.c:2727:13: sparse:    struct task_struct *
>    kernel/sched/deadline.c:2727:13: sparse:    struct task_struct [noderef] __rcu *
>    kernel/sched/deadline.c:2833:25: sparse: sparse: incompatible types in
> comparison expression (different address spaces):
>    kernel/sched/deadline.c:2833:25: sparse:    struct task_struct *
>    kernel/sched/deadline.c:2833:25: sparse:    struct task_struct [noderef] __rcu *
>    kernel/sched/deadline.c:2357:42: sparse: sparse: incorrect type in argument 2
> (different address spaces) @@     expected struct sched_dl_entity const *b @@
> got struct sched_dl_entity [noderef] __rcu * @@
>    kernel/sched/deadline.c:2357:42: sparse:     expected struct sched_dl_entity
> const *b
>    kernel/sched/deadline.c:2357:42: sparse:     got struct sched_dl_entity
> [noderef] __rcu *
>    kernel/sched/deadline.c:2368:38: sparse: sparse: incorrect type in argument 1
> (different address spaces) @@     expected struct task_struct *tsk @@     got
> struct task_struct [noderef] __rcu *curr @@
>    kernel/sched/deadline.c:2368:38: sparse:     expected struct task_struct *tsk
>    kernel/sched/deadline.c:2368:38: sparse:     got struct task_struct [noderef]
> __rcu *curr
>    kernel/sched/deadline.c:1262:39: sparse: sparse: incorrect type in argument 1
> (different address spaces) @@     expected struct task_struct *p @@     got struct
> task_struct [noderef] __rcu *curr @@
>    kernel/sched/deadline.c:1262:39: sparse:     expected struct task_struct *p
>    kernel/sched/deadline.c:1262:39: sparse:     got struct task_struct [noderef]
> __rcu *curr
>    kernel/sched/deadline.c:1262:85: sparse: sparse: incorrect type in argument 2
> (different address spaces) @@     expected struct sched_dl_entity const *b @@
> got struct sched_dl_entity [noderef] __rcu * @@
>    kernel/sched/deadline.c:1262:85: sparse:     expected struct sched_dl_entity
> const *b
>    kernel/sched/deadline.c:1262:85: sparse:     got struct sched_dl_entity
> [noderef] __rcu *
>    kernel/sched/deadline.c:1362:23: sparse: sparse: incorrect type in argument 1
> (different address spaces) @@     expected struct task_struct *p @@     got struct
> task_struct [noderef] __rcu *donor @@
>    kernel/sched/deadline.c:1362:23: sparse:     expected struct task_struct *p
>    kernel/sched/deadline.c:1362:23: sparse:     got struct task_struct [noderef]
> __rcu *donor
>    kernel/sched/deadline.c:1671:31: sparse: sparse: incorrect type in argument 1
> (different address spaces) @@     expected struct task_struct *p @@     got struct
> task_struct [noderef] __rcu *curr @@
>    kernel/sched/deadline.c:1671:31: sparse:     expected struct task_struct *p
>    kernel/sched/deadline.c:1671:31: sparse:     got struct task_struct [noderef]
> __rcu *curr
>    kernel/sched/deadline.c:1671:70: sparse: sparse: incorrect type in argument 2
> (different address spaces) @@     expected struct sched_dl_entity const *b @@
> got struct sched_dl_entity [noderef] __rcu * @@
>    kernel/sched/deadline.c:1671:70: sparse:     expected struct sched_dl_entity
> const *b
>    kernel/sched/deadline.c:1671:70: sparse:     got struct sched_dl_entity
> [noderef] __rcu *
>    kernel/sched/deadline.c:1760:39: sparse: sparse: incorrect type in initializer
> (different address spaces) @@     expected struct task_struct *donor @@     got
> struct task_struct [noderef] __rcu *donor @@
>    kernel/sched/deadline.c:1760:39: sparse:     expected struct task_struct *donor
>    kernel/sched/deadline.c:1760:39: sparse:     got struct task_struct [noderef]
> __rcu *donor
>    kernel/sched/deadline.c:2578: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/deadline.c:2578:9: sparse:     expected struct sched_domain
> *[assigned] sd
>    kernel/sched/deadline.c:2578:9: sparse:     got struct sched_domain [noderef]
> __rcu *parent
>    kernel/sched/deadline.c:2242:14: sparse: sparse: incorrect type in assignment
> (different address spaces) @@     expected struct task_struct *curr @@     got
> struct task_struct [noderef] __rcu * @@
>    kernel/sched/deadline.c:2242:14: sparse:     expected struct task_struct *curr
>    kernel/sched/deadline.c:2242:14: sparse:     got struct task_struct [noderef]
> __rcu *
>    kernel/sched/deadline.c:2243:15: sparse: sparse: incorrect type in assignment
> (different address spaces) @@     expected struct task_struct *donor @@     got
> struct task_struct [noderef] __rcu * @@
>    kernel/sched/deadline.c:2243:15: sparse:     expected struct task_struct *donor
>    kernel/sched/deadline.c:2243:15: sparse:     got struct task_struct [noderef]
> __rcu *
>    kernel/sched/deadline.c:2318:43: sparse: sparse: incorrect type in argument 2
> (different address spaces) @@     expected struct task_struct *p @@     got struct
> task_struct [noderef] __rcu *donor @@
>    kernel/sched/deadline.c:2318:43: sparse:     expected struct task_struct *p
>    kernel/sched/deadline.c:2318:43: sparse:     got struct task_struct [noderef]
> __rcu *donor
>    kernel/sched/deadline.c:2878:38: sparse: sparse: incorrect type in argument 1
> (different address spaces) @@     expected struct task_struct *tsk @@     got
> struct task_struct [noderef] __rcu *curr @@
>    kernel/sched/deadline.c:2878:38: sparse:     expected struct task_struct *tsk
>    kernel/sched/deadline.c:2878:38: sparse:     got struct task_struct [noderef]
> __rcu *curr
>    kernel/sched/deadline.c:2880:23: sparse: sparse: incorrect type in argument 1
> (different address spaces) @@     expected struct task_struct *p @@     got struct
> task_struct [noderef] __rcu *donor @@
>    kernel/sched/deadline.c:2880:23: sparse:     expected struct task_struct *p
>    kernel/sched/deadline.c:2880:23: sparse:     got struct task_struct [noderef]
> __rcu *donor
>    kernel/sched/deadline.c:2882:44: sparse: sparse: incorrect type in argument 2
> (different address spaces) @@     expected struct sched_dl_entity const *b @@
> got struct sched_dl_entity [noderef] __rcu * @@
>    kernel/sched/deadline.c:2882:44: sparse:     expected struct sched_dl_entity
> const *b
>    kernel/sched/deadline.c:2882:44: sparse:     got struct sched_dl_entity
> [noderef] __rcu *
>    kernel/sched/deadline.c:3071:23: sparse: sparse: incompatible types in
> comparison expression (different address spaces):
>    kernel/sched/deadline.c:3071:23: sparse:    struct task_struct [noderef] __rcu *
>    kernel/sched/deadline.c:3071:23: sparse:    struct task_struct *
>    kernel/sched/deadline.c:3120:32: sparse: sparse: incorrect type in argument 1
> (different address spaces) @@     expected struct task_struct *p @@     got struct
> task_struct [noderef] __rcu *curr @@
>    kernel/sched/build_policy.c: note: in included file:
>    kernel/sched/syscalls.c:206:22: sparse: sparse: incompatible types in
> comparison expression (different address spaces):
>    kernel/sched/syscalls.c:206:22: sparse:    struct task_struct [noderef] __rcu *
>    kernel/sched/syscalls.c:206:22: sparse:    struct task_struct *
>    kernel/sched/build_policy.c: note: in included file:
>    kernel/sched/sched.h:2276:25: sparse: sparse: incompatible types in
> comparison expression (different address spaces):
>    kernel/sched/sched.h:2276:25: sparse:    struct task_struct [noderef] __rcu *
>    kernel/sched/sched.h:2276:25: sparse:    struct task_struct *
>    kernel/sched/sched.h:2276:25: sparse: sparse: incompatible types in
> comparison expression (different address spaces):
>    kernel/sched/sched.h:2276:25: sparse:    struct task_struct [noderef] __rcu *
>    kernel/sched/sched.h:2276:25: sparse:    struct task_struct *
>    kernel/sched/sched.h:2287:26: sparse: sparse: incompatible types in
> comparison expression (different address spaces):
>    kernel/sched/sched.h:2287:26: sparse:    struct task_struct [noderef] __rcu *
>    kernel/sched/sched.h:2287:26: sparse:    struct task_struct *
>    kernel/sched/build_policy.c: note: in included file:
>    kernel/sched/rt.c:2413:45: sparse: sparse: dereference of noderef expression
>    kernel/sched/build_policy.c: note: in included file:
> >> kernel/sched/sched.h:2627:35: sparse: sparse: incorrect type in initializer
This warning is not about the change we made, @lkp, could you please check it?

> (different address spaces) @@     expected struct task_struct *p @@     got struct
> task_struct [noderef] __rcu *donor @@
>    kernel/sched/build_policy.c: note: in included file:
>    kernel/sched/rt.c:2456:32: sparse: sparse: dereference of noderef expression
>    kernel/sched/rt.c:2457:32: sparse: sparse: dereference of noderef expression
>    kernel/sched/build_policy.c: note: in included file:
>    kernel/sched/sched.h:2276:25: sparse: sparse: incompatible types in
> comparison expression (different address spaces):
>    kernel/sched/sched.h:2276:25: sparse:    struct task_struct [noderef] __rcu *
>    kernel/sched/sched.h:2276:25: sparse:    struct task_struct *
>    kernel/sched/sched.h:2287:26: sparse: sparse: incompatible types in
> comparison expression (different address spaces):
>    kernel/sched/sched.h:2287:26: sparse:    struct task_struct [noderef] __rcu *
>    kernel/sched/sched.h:2287:26: sparse:    struct task_struct *
>    kernel/sched/sched.h:2276:25: sparse: sparse: incompatible types in
> comparison expression (different address spaces):
>    kernel/sched/sched.h:2276:25: sparse:    struct task_struct [noderef] __rcu *
>    kernel/sched/sched.h:2276:25: sparse:    struct task_struct *
>    kernel/sched/sched.h:2276:25: sparse: sparse: incompatible types in
> comparison expression (different address spaces):
>    kernel/sched/sched.h:2276:25: sparse:    struct task_struct [noderef] __rcu *
>    kernel/sched/sched.h:2276:25: sparse:    struct task_struct *
>    kernel/sched/sched.h:2287:26: sparse: sparse: incompatible types in
> comparison expression (different address spaces):
>    kernel/sched/sched.h:2287:26: sparse:    struct task_struct [noderef] __rcu *
>    kernel/sched/sched.h:2287:26: sparse:    struct task_struct *
>    kernel/sched/sched.h:2287:26: sparse: sparse: incompatible types in
> comparison expression (different address spaces):
>    kernel/sched/sched.h:2287:26: sparse:    struct task_struct [noderef] __rcu *
>    kernel/sched/sched.h:2287:26: sparse:    struct task_struct *
>    kernel/sched/sched.h:2476:9: sparse: sparse: incompatible types in comparison
> expression (different address spaces):
>    kernel/sched/sched.h:2476:9: sparse:    struct task_struct [noderef] __rcu *
>    kernel/sched/sched.h:2476:9: sparse:    struct task_struct *
>    kernel/sched/sched.h:2287:26: sparse: sparse: incompatible types in
> comparison expression (different address spaces):
>    kernel/sched/sched.h:2287:26: sparse:    struct task_struct [noderef] __rcu *
>    kernel/sched/sched.h:2287:26: sparse:    struct task_struct *
>    kernel/sched/sched.h:2476:9: sparse: sparse: incompatible types in comparison
> expression (different address spaces):
>    kernel/sched/sched.h:2476:9: sparse:    struct task_struct [noderef] __rcu *
>    kernel/sched/sched.h:2476:9: sparse:    struct task_struct *
>    kernel/sched/build_policy.c: note: in included file:
>    kernel/sched/syscalls.c:1296:6: sparse: sparse: context imbalance in
> 'sched_getaffinity' - different lock contexts for basic block
>    kernel/sched/build_policy.c: note: in included file:
>    kernel/sched/rt.c:1767:15: sparse: sparse: dereference of noderef expression
> 
> vim +2627 kernel/sched/sched.h
> 
> 04746ed80bcf31 Ingo Molnar               2024-04-07  2624
> a7c81556ec4d34 Peter Zijlstra            2020-09-28  2625  static inline struct
> task_struct *get_push_task(struct rq *rq)
> a7c81556ec4d34 Peter Zijlstra            2020-09-28  2626  {
> af0c8b2bf67b25 Peter Zijlstra            2024-10-09 @2627  	struct task_struct *p =
> rq->donor;
> a7c81556ec4d34 Peter Zijlstra            2020-09-28  2628
> 5cb9eaa3d274f7 Peter Zijlstra            2020-11-17  2629
> 	lockdep_assert_rq_held(rq);
> a7c81556ec4d34 Peter Zijlstra            2020-09-28  2630
> a7c81556ec4d34 Peter Zijlstra            2020-09-28  2631  	if (rq->push_busy)
> a7c81556ec4d34 Peter Zijlstra            2020-09-28  2632  		return NULL;
> a7c81556ec4d34 Peter Zijlstra            2020-09-28  2633
> a7c81556ec4d34 Peter Zijlstra            2020-09-28  2634  	if (p->nr_cpus_allowed
> == 1)
> a7c81556ec4d34 Peter Zijlstra            2020-09-28  2635  		return NULL;
> a7c81556ec4d34 Peter Zijlstra            2020-09-28  2636
> e681dcbaa4b284 Sebastian Andrzej Siewior 2021-08-26  2637  	if (p-
> >migration_disabled)
> e681dcbaa4b284 Sebastian Andrzej Siewior 2021-08-26  2638  		return
> NULL;
> e681dcbaa4b284 Sebastian Andrzej Siewior 2021-08-26  2639
> a7c81556ec4d34 Peter Zijlstra            2020-09-28  2640  	rq->push_busy = true;
> a7c81556ec4d34 Peter Zijlstra            2020-09-28  2641  	return
> get_task_struct(p);
> a7c81556ec4d34 Peter Zijlstra            2020-09-28  2642  }
> a7c81556ec4d34 Peter Zijlstra            2020-09-28  2643
> 
> --
> 0-DAY CI Kernel Test Service
> https://github.com/intel/lkp-tests/wiki

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ