lib/smp_processor_id.c | 2 -- 1 file changed, 2 deletions(-)
Commit cac5cefbade90 ("sched/smp: Make SMP unconditional")
migrate_disable() even on UP builds.
Commit 06ddd17521bf1 ("sched/smp: Always define is_percpu_thread() and
scheduler_ipi()") made is_percpu_thread() check the affinity mask
instead replying always true for UP mask.
As a consequence smp_processor_id() now complains if invoked within a
migrate_disable() section because is_percpu_thread() checks its mask and
the migration check is left out.
Make migration check unconditional of SMP.
Fixes: cac5cefbade90 ("sched/smp: Make SMP unconditional")
Reported-by: kernel test robot <oliver.sang@intel.com>
Closes: https://lore.kernel.org/oe-lkp/202507100448.6b88d6f1-lkp@intel.com
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
---
lib/smp_processor_id.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/lib/smp_processor_id.c b/lib/smp_processor_id.c
index a2bb7738c373c..94b3f6b195388 100644
--- a/lib/smp_processor_id.c
+++ b/lib/smp_processor_id.c
@@ -22,10 +22,8 @@ unsigned int check_preemption_disabled(const char *what1, const char *what2)
if (is_percpu_thread())
goto out;
-#ifdef CONFIG_SMP
if (current->migration_disabled)
goto out;
-#endif
/*
* It is valid to assume CPU-locality during early bootup:
--
2.50.0
On 7/10/2025 4:27 PM, Sebastian Andrzej Siewior wrote: > Commit cac5cefbade90 ("sched/smp: Make SMP unconditional") > migrate_disable() even on UP builds. > Commit 06ddd17521bf1 ("sched/smp: Always define is_percpu_thread() and > scheduler_ipi()") made is_percpu_thread() check the affinity mask > instead replying always true for UP mask. > > As a consequence smp_processor_id() now complains if invoked within a > migrate_disable() section because is_percpu_thread() checks its mask and > the migration check is left out. > > Make migration check unconditional of SMP. > > Fixes: cac5cefbade90 ("sched/smp: Make SMP unconditional") > Reported-by: kernel test robot <oliver.sang@intel.com> > Closes: https://lore.kernel.org/oe-lkp/202507100448.6b88d6f1-lkp@intel.com > Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> > --- From my understanding, Reviewed-by: Chen Yu <yu.c.chen@intel.com> thank you for fixing this. best, Chenyu
On Thu, Jul 10, 2025 at 04:32:57PM +0800, Chen, Yu C wrote: > On 7/10/2025 4:27 PM, Sebastian Andrzej Siewior wrote: > > Commit cac5cefbade90 ("sched/smp: Make SMP unconditional") > > migrate_disable() even on UP builds. > > Commit 06ddd17521bf1 ("sched/smp: Always define is_percpu_thread() and > > scheduler_ipi()") made is_percpu_thread() check the affinity mask > > instead replying always true for UP mask. > > > > As a consequence smp_processor_id() now complains if invoked within a > > migrate_disable() section because is_percpu_thread() checks its mask and > > the migration check is left out. > > > > Make migration check unconditional of SMP. > > > > Fixes: cac5cefbade90 ("sched/smp: Make SMP unconditional") > > Reported-by: kernel test robot <oliver.sang@intel.com> > > Closes: https://lore.kernel.org/oe-lkp/202507100448.6b88d6f1-lkp@intel.com > > Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> > > --- > > From my understanding, > > Reviewed-by: Chen Yu <yu.c.chen@intel.com> Thanks; let me go stick this in a tree somewhere.
The following commit has been merged into the sched/core branch of tip:
Commit-ID: 2885daf47081dd1aaf1a588e9d001eb343df1f90
Gitweb: https://git.kernel.org/tip/2885daf47081dd1aaf1a588e9d001eb343df1f90
Author: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
AuthorDate: Thu, 10 Jul 2025 10:27:48 +02:00
Committer: Peter Zijlstra <peterz@infradead.org>
CommitterDate: Thu, 10 Jul 2025 17:52:13 +02:00
lib/smp_processor_id: Make migration check unconditional of SMP
Commit cac5cefbade90 ("sched/smp: Make SMP unconditional")
migrate_disable() even on UP builds.
Commit 06ddd17521bf1 ("sched/smp: Always define is_percpu_thread() and
scheduler_ipi()") made is_percpu_thread() check the affinity mask
instead replying always true for UP mask.
As a consequence smp_processor_id() now complains if invoked within a
migrate_disable() section because is_percpu_thread() checks its mask and
the migration check is left out.
Make migration check unconditional of SMP.
Fixes: cac5cefbade90 ("sched/smp: Make SMP unconditional")
Closes: https://lore.kernel.org/oe-lkp/202507100448.6b88d6f1-lkp@intel.com
Reported-by: kernel test robot <oliver.sang@intel.com>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Chen Yu <yu.c.chen@intel.com>
Link: https://lore.kernel.org/r/20250710082748.-DPO1rjO@linutronix.de
---
lib/smp_processor_id.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/lib/smp_processor_id.c b/lib/smp_processor_id.c
index a2bb773..94b3f6b 100644
--- a/lib/smp_processor_id.c
+++ b/lib/smp_processor_id.c
@@ -22,10 +22,8 @@ unsigned int check_preemption_disabled(const char *what1, const char *what2)
if (is_percpu_thread())
goto out;
-#ifdef CONFIG_SMP
if (current->migration_disabled)
goto out;
-#endif
/*
* It is valid to assume CPU-locality during early bootup:
© 2016 - 2025 Red Hat, Inc.