summaryrefslogtreecommitdiff
path: root/kernel
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2026-10-29 07:49:07 -1000
committerLinus Torvalds <torvalds@linux-foundation.org>2026-10-29 07:49:07 -1000
commitd011f648a708b231f7ef28c18ff30c815b07fe56 (patch)
treeeb9ebe5f245eba4a999d7fd7b83914cff83afb21 /kernel
parentcb01c6914ed57a68b4f5d67f47208e24f9a45408 (diff)
parent78ff77ded78f2d3d6040705a3ab5a83cc45275e3 (diff)
Merge tag 'kthread-fix-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks
Pull kthread fix from Frederic Weisbecker: "Fix a bug where dynamic CPU isolation through cpuset isolated partitions can move a kthread out of the housekeeping range. The fix makes sure the fallback affinity is always a set of online housekeeper" * tag 'kthread-fix-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks: kthread: Fall back when no preferred housekeeping CPU is online
Diffstat (limited to 'kernel')
-rw-r--r--kernel/kthread.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/kthread.c b/kernel/kthread.c
index cc8cb5d3eab7..fdb8fb07f40b 100644
--- a/kernel/kthread.c
+++ b/kernel/kthread.c
@@ -343,7 +343,7 @@ static void kthread_fetch_affinity(struct kthread *kthread, struct cpumask *cpum
}
cpumask_and(cpumask, pref, housekeeping_cpumask(HK_TYPE_DOMAIN));
- if (cpumask_empty(cpumask))
+ if (!cpumask_intersects(cpumask, cpu_online_mask))
cpumask_copy(cpumask, housekeeping_cpumask(HK_TYPE_DOMAIN));
}