From: kernel test robot <lkp@intel.com>
To: John Stultz <jstultz@google.com>, LKML <linux-kernel@vger.kernel.org>
Cc: oe-kbuild-all@lists.linux.dev,
Peter Zijlstra <peterz@infradead.org>,
Joel Fernandes <joelaf@google.com>,
Qais Yousef <qyousef@google.com>, Ingo Molnar <mingo@redhat.com>,
Juri Lelli <juri.lelli@redhat.com>,
Vincent Guittot <vincent.guittot@linaro.org>,
Dietmar Eggemann <dietmar.eggemann@arm.com>,
Valentin Schneider <vschneid@redhat.com>,
Steven Rostedt <rostedt@goodmis.org>,
Ben Segall <bsegall@google.com>,
Zimuzo Ezeozue <zezeozue@google.com>,
Youssef Esmat <youssefesmat@google.com>,
Mel Gorman <mgorman@suse.de>,
Daniel Bristot de Oliveira <bristot@redhat.com>,
Will Deacon <will@kernel.org>, Waiman Long <longman@redhat.com>,
Boqun Feng <boqun.feng@gmail.com>,
"Paul E. McKenney" <paulmck@kernel.org>,
Xuewen Yan <xuewen.yan94@gmail.com>,
K Prateek Nayak <kprateek.nayak@amd.com>,
Metin Kaya <Metin.Kaya@arm.com>,
Thomas Gleixner <tglx@linutronix.de>,
kernel-team@android.com, Connor O'Brien <connoro@google.com>,
John Stultz <jstultz@google.com>
Subject: Re: [PATCH v8 7/7] sched: Split scheduler and execution contexts
Date: Sun, 11 Feb 2024 00:51:25 +0800 [thread overview]
Message-ID: <202402110009.Pd1PVwG6-lkp@intel.com> (raw)
In-Reply-To: <20240210002328.4126422-8-jstultz@google.com>
Hi John,
kernel test robot noticed the following build warnings:
[auto build test WARNING on tip/sched/core]
[also build test WARNING on tip/master linus/master v6.8-rc3 next-20240209]
[cannot apply to tip/locking/core tip/auto-latest]
[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/John-Stultz/locking-mutex-Remove-wakeups-from-under-mutex-wait_lock/20240210-082732
base: tip/sched/core
patch link: https://lore.kernel.org/r/20240210002328.4126422-8-jstultz%40google.com
patch subject: [PATCH v8 7/7] sched: Split scheduler and execution contexts
config: x86_64-randconfig-r121-20240210 (https://download.01.org/0day-ci/archive/20240211/202402110009.Pd1PVwG6-lkp@intel.com/config)
compiler: clang version 17.0.6 (https://github.com/llvm/llvm-project 6009708b4367171ccdbf4b5905cb6a803753fe18)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240211/202402110009.Pd1PVwG6-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/202402110009.Pd1PVwG6-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
kernel/sched/core.c:264:56: sparse: sparse: incompatible types in comparison expression (different address spaces):
kernel/sched/core.c:264:56: sparse: struct task_struct [noderef] __rcu *
kernel/sched/core.c:264:56: sparse: struct task_struct *
kernel/sched/core.c:796:55: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected struct task_struct *p @@ got struct task_struct [noderef] __rcu *curr @@
kernel/sched/core.c:796:55: sparse: expected struct task_struct *p
kernel/sched/core.c:796:55: sparse: got struct task_struct [noderef] __rcu *curr
kernel/sched/core.c:1042:38: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected struct task_struct *curr @@ got struct task_struct [noderef] __rcu *curr @@
kernel/sched/core.c:1042:38: sparse: expected struct task_struct *curr
kernel/sched/core.c:1042:38: sparse: got struct task_struct [noderef] __rcu *curr
>> kernel/sched/core.c:2240:40: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected struct task_struct *selected @@ got struct task_struct [noderef] __rcu *curr @@
kernel/sched/core.c:2240:40: sparse: expected struct task_struct *selected
kernel/sched/core.c:2240:40: sparse: got struct task_struct [noderef] __rcu *curr
kernel/sched/core.c:2251:68: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct task_struct *tsk @@ got struct task_struct [noderef] __rcu *curr @@
kernel/sched/core.c:2251:68: sparse: expected struct task_struct *tsk
kernel/sched/core.c:2251:68: sparse: got struct task_struct [noderef] __rcu *curr
kernel/sched/core.c:3745:17: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct sched_domain *[assigned] sd @@ got struct sched_domain [noderef] __rcu *parent @@
kernel/sched/core.c:3745:17: sparse: expected struct sched_domain *[assigned] sd
kernel/sched/core.c:3745:17: sparse: got struct sched_domain [noderef] __rcu *parent
kernel/sched/core.c:3952: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/core.c:3952:36: sparse: expected struct task_struct const *p
kernel/sched/core.c:3952:36: sparse: got struct task_struct [noderef] __rcu *curr
kernel/sched/core.c:9472: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/core.c:9472:43: sparse: expected struct task_struct *push_task
kernel/sched/core.c:9472:43: sparse: got struct task_struct [noderef] __rcu *curr
>> kernel/sched/core.c:5671:18: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct task_struct *selected @@ got struct task_struct [noderef] __rcu *curr @@
kernel/sched/core.c:5671:18: sparse: expected struct task_struct *selected
kernel/sched/core.c:5671:18: sparse: got struct task_struct [noderef] __rcu *curr
kernel/sched/core.c:6315:32: sparse: sparse: incompatible types in comparison expression (different address spaces):
kernel/sched/core.c:6315:32: sparse: struct task_struct [noderef] __rcu *
kernel/sched/core.c:6315:32: sparse: struct task_struct *
kernel/sched/core.c:6346:23: sparse: sparse: incompatible types in comparison expression (different address spaces):
kernel/sched/core.c:6346:23: sparse: struct task_struct [noderef] __rcu *
kernel/sched/core.c:6346:23: sparse: struct task_struct *
kernel/sched/core.c:6354:46: sparse: sparse: incompatible types in comparison expression (different address spaces):
kernel/sched/core.c:6354:46: sparse: struct task_struct *
kernel/sched/core.c:6354:46: sparse: struct task_struct [noderef] __rcu *
kernel/sched/core.c:6414: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/core.c:6414:9: sparse: expected struct sched_domain *[assigned] sd
kernel/sched/core.c:6414:9: sparse: got struct sched_domain [noderef] __rcu *parent
kernel/sched/core.c:6667:14: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct task_struct *prev @@ got struct task_struct [noderef] __rcu *curr @@
kernel/sched/core.c:6667:14: sparse: expected struct task_struct *prev
kernel/sched/core.c:6667:14: sparse: got struct task_struct [noderef] __rcu *curr
kernel/sched/core.c:7201:17: sparse: sparse: incompatible types in comparison expression (different address spaces):
kernel/sched/core.c:7201:17: sparse: struct task_struct *
kernel/sched/core.c:7201:17: sparse: struct task_struct [noderef] __rcu *
kernel/sched/core.c:7416:22: sparse: sparse: incompatible types in comparison expression (different address spaces):
kernel/sched/core.c:7416:22: sparse: struct task_struct [noderef] __rcu *
kernel/sched/core.c:7416:22: sparse: struct task_struct *
kernel/sched/core.c:7463:48: sparse: sparse: incompatible types in comparison expression (different address spaces):
kernel/sched/core.c:7463:48: sparse: struct task_struct [noderef] __rcu *
kernel/sched/core.c:7463:48: sparse: struct task_struct *
kernel/sched/core.c:11505: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/core.c:11505:25: sparse: expected struct task_struct *p
kernel/sched/core.c:11505:25: sparse: got struct task_struct [noderef] __rcu *curr
kernel/sched/core.c:338:9: sparse: sparse: context imbalance in 'sched_core_lock' - different lock contexts for basic block
kernel/sched/core.c:348:17: sparse: sparse: context imbalance in 'sched_core_unlock' - unexpected unlock
kernel/sched/core.c:551:6: sparse: sparse: context imbalance in 'raw_spin_rq_lock_nested' - wrong count at exit
kernel/sched/core.c:584:23: sparse: sparse: context imbalance in 'raw_spin_rq_trylock' - wrong count at exit
kernel/sched/core.c:600:6: sparse: sparse: context imbalance in 'raw_spin_rq_unlock' - unexpected unlock
kernel/sched/core.c: note: in included file:
kernel/sched/sched.h:1619:9: sparse: sparse: context imbalance in '__task_rq_lock' - wrong count at exit
kernel/sched/sched.h:1619:9: sparse: sparse: context imbalance in 'task_rq_lock' - wrong count at exit
kernel/sched/core.c: note: in included file:
kernel/sched/pelt.h:97:13: 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/pelt.h:97:13: sparse: expected struct task_struct const *p
kernel/sched/pelt.h:97:13: sparse: got struct task_struct [noderef] __rcu *curr
kernel/sched/core.c:796:9: sparse: sparse: dereference of noderef expression
kernel/sched/core.c:1502:13: sparse: sparse: context imbalance in 'uclamp_update_util_min_rt_default' - wrong count at exit
kernel/sched/core.c:1834:9: sparse: sparse: context imbalance in 'uclamp_sync_util_min_rt_default' - wrong count at exit
kernel/sched/core.c:2321:35: sparse: sparse: context imbalance in 'wait_task_inactive' - different lock contexts for basic block
kernel/sched/core.c: note: in included file:
kernel/sched/sched.h:2163:32: sparse: sparse: incompatible types in comparison expression (different address spaces):
kernel/sched/sched.h:2163:32: sparse: struct task_struct [noderef] __rcu *
kernel/sched/sched.h:2163:32: sparse: struct task_struct *
kernel/sched/sched.h:2335:9: sparse: sparse: incompatible types in comparison expression (different address spaces):
kernel/sched/sched.h:2335:9: sparse: struct task_struct [noderef] __rcu *
kernel/sched/sched.h:2335:9: sparse: struct task_struct *
kernel/sched/core.c:2215:38: sparse: sparse: incompatible types in comparison expression (different address spaces):
kernel/sched/core.c:2215:38: sparse: struct task_struct [noderef] __rcu *
kernel/sched/core.c:2215:38: sparse: struct task_struct const *
kernel/sched/sched.h:2163:32: sparse: sparse: incompatible types in comparison expression (different address spaces):
kernel/sched/sched.h:2163:32: sparse: struct task_struct [noderef] __rcu *
kernel/sched/sched.h:2163:32: sparse: struct task_struct *
kernel/sched/sched.h:2335:9: sparse: sparse: incompatible types in comparison expression (different address spaces):
kernel/sched/sched.h:2335:9: sparse: struct task_struct [noderef] __rcu *
kernel/sched/sched.h:2335:9: sparse: struct task_struct *
kernel/sched/sched.h:2335:9: sparse: sparse: incompatible types in comparison expression (different address spaces):
kernel/sched/sched.h:2335:9: sparse: struct task_struct [noderef] __rcu *
kernel/sched/sched.h:2335:9: sparse: struct task_struct *
kernel/sched/sched.h:2335:9: sparse: sparse: incompatible types in comparison expression (different address spaces):
kernel/sched/sched.h:2335:9: sparse: struct task_struct [noderef] __rcu *
kernel/sched/sched.h:2335:9: sparse: struct task_struct *
kernel/sched/sched.h:2335:9: sparse: sparse: incompatible types in comparison expression (different address spaces):
kernel/sched/sched.h:2335:9: sparse: struct task_struct [noderef] __rcu *
kernel/sched/sched.h:2335:9: sparse: struct task_struct *
kernel/sched/sched.h:2163:32: sparse: sparse: incompatible types in comparison expression (different address spaces):
kernel/sched/sched.h:2163:32: sparse: struct task_struct [noderef] __rcu *
kernel/sched/sched.h:2163:32: sparse: struct task_struct *
kernel/sched/sched.h:2335:9: sparse: sparse: incompatible types in comparison expression (different address spaces):
kernel/sched/sched.h:2335:9: sparse: struct task_struct [noderef] __rcu *
kernel/sched/sched.h:2335:9: sparse: struct task_struct *
kernel/sched/sched.h:2163:32: sparse: sparse: incompatible types in comparison expression (different address spaces):
kernel/sched/sched.h:2163:32: sparse: struct task_struct [noderef] __rcu *
kernel/sched/sched.h:2163:32: sparse: struct task_struct *
kernel/sched/sched.h:2335:9: sparse: sparse: incompatible types in comparison expression (different address spaces):
kernel/sched/sched.h:2335:9: sparse: struct task_struct [noderef] __rcu *
kernel/sched/sched.h:2335:9: sparse: struct task_struct *
kernel/sched/sched.h:2163:32: sparse: sparse: incompatible types in comparison expression (different address spaces):
kernel/sched/sched.h:2163:32: sparse: struct task_struct [noderef] __rcu *
kernel/sched/sched.h:2163:32: sparse: struct task_struct *
kernel/sched/sched.h:2335:9: sparse: sparse: incompatible types in comparison expression (different address spaces):
kernel/sched/sched.h:2335:9: sparse: struct task_struct [noderef] __rcu *
kernel/sched/sched.h:2335:9: sparse: struct task_struct *
kernel/sched/core.c: note: in included file (through arch/x86/include/asm/uaccess.h, include/linux/uaccess.h, include/linux/sched/task.h, ...):
arch/x86/include/asm/uaccess_64.h:88:24: sparse: sparse: cast removes address space '__user' of expression
kernel/sched/core.c:8333:5: sparse: sparse: context imbalance in 'dl_task_check_affinity' - wrong count at exit
kernel/sched/core.c:8437:9: sparse: sparse: context imbalance in 'sched_setaffinity' - different lock contexts for basic block
kernel/sched/core.c:8499:6: sparse: sparse: context imbalance in 'sched_getaffinity' - wrong count at exit
kernel/sched/core.c:8662:28: sparse: sparse: context imbalance in '__cond_resched_lock' - unexpected unlock
kernel/sched/core.c:8680:17: sparse: sparse: context imbalance in '__cond_resched_rwlock_read' - unexpected unlock
kernel/sched/core.c:8698:17: sparse: sparse: context imbalance in '__cond_resched_rwlock_write' - unexpected unlock
kernel/sched/core.c:11670:5: sparse: sparse: context imbalance in '__sched_mm_cid_migrate_from_fetch_cid' - different lock contexts for basic block
vim +2240 kernel/sched/core.c
2237
2238 void wakeup_preempt(struct rq *rq, struct task_struct *p, int flags)
2239 {
> 2240 struct task_struct *selected = rq_selected(rq);
2241
2242 if (p->sched_class == selected->sched_class)
2243 selected->sched_class->wakeup_preempt(rq, p, flags);
2244 else if (sched_class_above(p->sched_class, selected->sched_class))
2245 resched_curr(rq);
2246
2247 /*
2248 * A queue event has occurred, and we're going to schedule. In
2249 * this case, we can save a useless back to back clock update.
2250 */
2251 if (task_on_rq_queued(selected) && test_tsk_need_resched(rq->curr))
2252 rq_clock_skip_update(rq);
2253 }
2254
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next prev parent reply other threads:[~2024-02-10 16:51 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-02-10 0:23 [PATCH v8 0/7] Preparatory changes for Proxy Execution v8 John Stultz
2024-02-10 0:23 ` [PATCH v8 1/7] locking/mutex: Remove wakeups from under mutex::wait_lock John Stultz
2024-02-10 0:23 ` [PATCH v8 2/7] locking/mutex: Make mutex::wait_lock irq safe John Stultz
2024-02-10 0:23 ` [PATCH v8 3/7] locking/mutex: Expose __mutex_owner() John Stultz
2024-02-10 0:23 ` [PATCH v8 4/7] sched: Add do_push_task helper John Stultz
2024-02-10 0:23 ` [PATCH v8 5/7] sched: Consolidate pick_*_task to task_is_pushable helper John Stultz
2024-02-10 0:23 ` [PATCH v8 6/7] sched: Split out __schedule() deactivate task logic into a helper John Stultz
2024-02-10 0:23 ` [PATCH v8 7/7] sched: Split scheduler and execution contexts John Stultz
2024-02-10 16:51 ` kernel test robot [this message]
2024-02-12 15:50 ` [PATCH v8 0/7] Preparatory changes for Proxy Execution v8 Metin Kaya
2024-02-12 18:17 ` John Stultz
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=202402110009.Pd1PVwG6-lkp@intel.com \
--to=lkp@intel.com \
--cc=Metin.Kaya@arm.com \
--cc=boqun.feng@gmail.com \
--cc=bristot@redhat.com \
--cc=bsegall@google.com \
--cc=connoro@google.com \
--cc=dietmar.eggemann@arm.com \
--cc=joelaf@google.com \
--cc=jstultz@google.com \
--cc=juri.lelli@redhat.com \
--cc=kernel-team@android.com \
--cc=kprateek.nayak@amd.com \
--cc=linux-kernel@vger.kernel.org \
--cc=longman@redhat.com \
--cc=mgorman@suse.de \
--cc=mingo@redhat.com \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=paulmck@kernel.org \
--cc=peterz@infradead.org \
--cc=qyousef@google.com \
--cc=rostedt@goodmis.org \
--cc=tglx@linutronix.de \
--cc=vincent.guittot@linaro.org \
--cc=vschneid@redhat.com \
--cc=will@kernel.org \
--cc=xuewen.yan94@gmail.com \
--cc=youssefesmat@google.com \
--cc=zezeozue@google.com \
/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.