public inbox for llvm@lists.linux.dev
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Chen Jinghuang <chenjinghuang2@huawei.com>
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev
Subject: Re: [RFC PATCH v5 8/9] sched/fair: Steal work from an overloaded CPU when CPU goes idle
Date: Mon, 23 Mar 2026 08:14:53 +0800	[thread overview]
Message-ID: <202603230856.FTVv1O5z-lkp@intel.com> (raw)
In-Reply-To: <20260320055920.2518389-9-chenjinghuang2@huawei.com>

Hi Chen,

[This is a private test report for your RFC patch.]
kernel test robot noticed the following build warnings:

[auto build test WARNING on linus/master]
[also build test WARNING on v7.0-rc5]
[cannot apply to tip/sched/core peterz-queue/sched/core next-20260320]
[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/Chen-Jinghuang/sched-Provide-sparsemask-a-reduced-contention-bitmap/20260321-084706
base:   linus/master
patch link:    https://lore.kernel.org/r/20260320055920.2518389-9-chenjinghuang2%40huawei.com
patch subject: [RFC PATCH v5 8/9] sched/fair: Steal work from an overloaded CPU when CPU goes idle
config: arm-randconfig-001-20260323 (https://download.01.org/0day-ci/archive/20260323/202603230856.FTVv1O5z-lkp@intel.com/config)
compiler: clang version 23.0.0git (https://github.com/llvm/llvm-project b1cf9b0835d214bcbd0d6e8882760c07cfccb298)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260323/202603230856.FTVv1O5z-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/202603230856.FTVv1O5z-lkp@intel.com/

All warnings (new ones prefixed by >>):

>> kernel/sched/fair.c:13272:3: warning: releasing raw_spinlock 'rq_lockp(dst_rq)' that was not held [-Wthread-safety-analysis]
    13272 |                 raw_spin_rq_unlock(dst_rq);
          |                 ^
>> kernel/sched/fair.c:13293:2: warning: raw_spinlock 'rq_lockp(dst_rq)' is not held on every path through here [-Wthread-safety-analysis]
    13293 |         local_irq_restore(rf.flags);
          |         ^
   include/linux/irqflags.h:223:8: note: expanded from macro 'local_irq_restore'
     223 |                 if (!raw_irqs_disabled_flags(flags))    \
         |                      ^
   include/linux/irqflags.h:188:13: note: expanded from macro 'raw_irqs_disabled_flags'
     188 |                 typecheck(unsigned long, flags);        \
         |                           ^
   kernel/sched/fair.c:13286:3: note: raw_spinlock acquired here
    13286 |                 raw_spin_rq_lock(dst_rq);
          |                 ^
   kernel/sched/fair.c:13310:12: error: redefinition of 'try_steal'
    13310 | static int try_steal(struct rq *dst_rq, struct rq_flags *dst_rf)
          |            ^
   kernel/sched/fair.c:5195:19: note: previous definition is here
    5195 | static inline int try_steal(struct rq *this_rq, struct rq_flags *rf)
         |                   ^
   2 warnings and 1 error generated.


vim +13272 kernel/sched/fair.c

 13250	
 13251	/*
 13252	 * Attempt to migrate a CFS task from @src_cpu to @dst_rq.  @locked indicates
 13253	 * whether @dst_rq is already locked on entry.  This function may lock or
 13254	 * unlock @dst_rq, and updates @locked to indicate the locked state on return.
 13255	 * The locking protocol is based on idle_balance().
 13256	 * Returns 1 on success and 0 on failure.
 13257	 */
 13258	static int steal_from(struct rq *dst_rq, struct rq_flags *dst_rf, bool *locked,
 13259			      int src_cpu)
 13260	{
 13261		struct task_struct *p;
 13262		struct rq_flags rf;
 13263		int stolen = 0;
 13264		int dst_cpu = dst_rq->cpu;
 13265		struct rq *src_rq = cpu_rq(src_cpu);
 13266	
 13267		if (dst_cpu == src_cpu || src_rq->cfs.h_nr_runnable < 2)
 13268			return 0;
 13269	
 13270		if (*locked) {
 13271			rq_unpin_lock(dst_rq, dst_rf);
 13272			raw_spin_rq_unlock(dst_rq);
 13273			*locked = false;
 13274		}
 13275		rq_lock_irqsave(src_rq, &rf);
 13276		update_rq_clock(src_rq);
 13277	
 13278		if (src_rq->cfs.h_nr_runnable < 2 || !cpu_active(src_cpu))
 13279			p = NULL;
 13280		else
 13281			p = detach_next_task(&src_rq->cfs, dst_rq);
 13282	
 13283		rq_unlock(src_rq, &rf);
 13284	
 13285		if (p) {
 13286			raw_spin_rq_lock(dst_rq);
 13287			rq_repin_lock(dst_rq, dst_rf);
 13288			*locked = true;
 13289			update_rq_clock(dst_rq);
 13290			attach_task(dst_rq, p);
 13291			stolen = 1;
 13292		}
 13293		local_irq_restore(rf.flags);
 13294	
 13295		return stolen;
 13296	}
 13297	

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

       reply	other threads:[~2026-03-23  0:14 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20260320055920.2518389-9-chenjinghuang2@huawei.com>
2026-03-23  0:14 ` kernel test robot [this message]
2026-03-23  4:51 ` [RFC PATCH v5 8/9] sched/fair: Steal work from an overloaded CPU when CPU goes idle kernel test robot

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=202603230856.FTVv1O5z-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=chenjinghuang2@huawei.com \
    --cc=llvm@lists.linux.dev \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox