cpuset/isolation: Honour kthreads preferred affinity
| From: | Frederic Weisbecker <frederic-AT-kernel.org> | |
| To: | LKML <linux-kernel-AT-vger.kernel.org> | |
| Subject: | [PATCH 00/33 v7] cpuset/isolation: Honour kthreads preferred affinity | |
| Date: | Sun, 25 Jan 2026 23:45:07 +0100 | |
| Message-ID: | <20260125224541.50226-1-frederic@kernel.org> | |
| Cc: | Frederic Weisbecker <frederic-AT-kernel.org>, "David S . Miller" <davem-AT-davemloft.net>, Greg Kroah-Hartman <gregkh-AT-linuxfoundation.org>, Ingo Molnar <mingo-AT-redhat.com>, Jakub Kicinski <kuba-AT-kernel.org>, Marco Crivellari <marco.crivellari-AT-suse.com>, Michal Hocko <mhocko-AT-suse.com>, cgroups-AT-vger.kernel.org, Shakeel Butt <shakeel.butt-AT-linux.dev>, Catalin Marinas <catalin.marinas-AT-arm.com>, Lai Jiangshan <jiangshanlai-AT-gmail.com>, Will Deacon <will-AT-kernel.org>, Simon Horman <horms-AT-kernel.org>, Michal Koutny <mkoutny-AT-suse.com>, Andrew Morton <akpm-AT-linux-foundation.org>, Gabriele Monaco <gmonaco-AT-redhat.com>, linux-pci-AT-vger.kernel.org, linux-mm-AT-kvack.org, Johannes Weiner <hannes-AT-cmpxchg.org>, Chen Ridong <chenridong-AT-huawei.com>, Thomas Gleixner <tglx-AT-linutronix.de>, Muchun Song <muchun.song-AT-linux.dev>, Tejun Heo <tj-AT-kernel.org>, Waiman Long <longman-AT-redhat.com>, Roman Gushchin <roman.gushchin-AT-linux.dev>, Vlastimil Babka <vbabka-AT-suse.cz>, linux-arm-kernel-AT-lists.infradead.org, Jens Axboe <axboe-AT-kernel.dk>, Paolo Abeni <pabeni-AT-redhat.com>, "Rafael J . Wysocki" <rafael-AT-kernel.org>, Bjorn Helgaas <bhelgaas-AT-google.com>, Eric Dumazet <edumazet-AT-google.com>, Danilo Krummrich <dakr-AT-kernel.org>, Phil Auld <pauld-AT-redhat.com>, linux-block-AT-vger.kernel.org, Peter Zijlstra <peterz-AT-infradead.org>, netdev-AT-vger.kernel.org | |
| Archive-link: | Article |
Hi,
Here is just a few changes sinces v6:
- More tags
- Fix raw access to __rcu pointer (Simon Horman, Waiman)
- Fix cpu_hotplug_lock deadlock and use correct static branch API
(Chen Ridong)
- Fix a few changelogs that got the set rules between HK_TYPE_DOMAIN
HL_TYPE_KERNEL_NOISE wrong.
- Simplify arm64 mismatched 32 bits support (Will Deacon)
If all goes well, my plan is to make the pull request myself for the
upcoming merge window.
git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks.git
kthread/core-v7
HEAD: dcbe41f43e2cb32fbdbaf73b7745739e018b35dc
Thanks,
Frederic
---
Frederic Weisbecker (33):
PCI: Prepare to protect against concurrent isolated cpuset change
cpu: Revert "cpu/hotplug: Prevent self deadlock on CPU hot-unplug"
memcg: Prepare to protect against concurrent isolated cpuset change
mm: vmstat: Prepare to protect against concurrent isolated cpuset change
sched/isolation: Save boot defined domain flags
cpuset: Convert boot_hk_cpus to use HK_TYPE_DOMAIN_BOOT
driver core: cpu: Convert /sys/devices/system/cpu/isolated to use HK_TYPE_DOMAIN_BOOT
net: Keep ignoring isolated cpuset change
block: Protect against concurrent isolated cpuset change
timers/migration: Prevent from lockdep false positive warning
cpu: Provide lockdep check for CPU hotplug lock write-held
cpuset: Provide lockdep check for cpuset lock held
sched/isolation: Convert housekeeping cpumasks to rcu pointers
cpuset: Update HK_TYPE_DOMAIN cpumask from cpuset
sched/isolation: Flush memcg workqueues on cpuset isolated partition change
sched/isolation: Flush vmstat workqueues on cpuset isolated partition change
PCI: Flush PCI probe workqueue on cpuset isolated partition change
cpuset: Propagate cpuset isolation update to workqueue through housekeeping
cpuset: Propagate cpuset isolation update to timers through housekeeping
timers/migration: Remove superfluous cpuset isolation test
cpuset: Remove cpuset_cpu_is_isolated()
sched/isolation: Remove HK_TYPE_TICK test from cpu_is_isolated()
PCI: Remove superfluous HK_TYPE_WQ check
kthread: Refine naming of affinity related fields
kthread: Include unbound kthreads in the managed affinity list
kthread: Include kthreadd to the managed affinity list
kthread: Rely on HK_TYPE_DOMAIN for preferred affinity management
sched: Switch the fallback task allowed cpumask to HK_TYPE_DOMAIN
sched/arm64: Move fallback task cpumask to HK_TYPE_DOMAIN
kthread: Honour kthreads preferred affinity after cpuset changes
kthread: Comment on the purpose and placement of kthread_affine_node() call
kthread: Document kthread_affine_preferred()
doc: Add housekeeping documentation
Documentation/arch/arm64/asymmetric-32bit.rst | 12 +-
Documentation/core-api/housekeeping.rst | 111 ++++++++++++++++++
Documentation/core-api/index.rst | 1 +
arch/arm64/kernel/cpufeature.c | 6 +-
block/blk-mq.c | 6 +-
drivers/base/cpu.c | 2 +-
drivers/pci/pci-driver.c | 71 +++++++++---
include/linux/cpuhplock.h | 1 +
include/linux/cpuset.h | 8 +-
include/linux/kthread.h | 1 +
include/linux/memcontrol.h | 4 +
include/linux/mmu_context.h | 2 +-
include/linux/pci.h | 3 +
include/linux/percpu-rwsem.h | 1 +
include/linux/sched/isolation.h | 16 ++-
include/linux/vmstat.h | 2 +
include/linux/workqueue.h | 2 +-
init/Kconfig | 1 +
kernel/cgroup/cpuset.c | 53 +++------
kernel/cpu.c | 42 +++----
kernel/kthread.c | 160 +++++++++++++++++---------
kernel/sched/isolation.c | 145 ++++++++++++++++++-----
kernel/sched/sched.h | 4 +
kernel/time/timer_migration.c | 25 ++--
kernel/workqueue.c | 17 +--
mm/memcontrol.c | 31 ++++-
mm/vmstat.c | 15 ++-
net/core/net-sysfs.c | 2 +-
28 files changed, 538 insertions(+), 206 deletions(-)
