Messages in this thread |  | | Date | Sat, 28 Mar 2020 12:21:17 -0300 | From | Marcelo Tosatti <> | Subject | [patch 0/3] affine kernel threads to specified cpumask (v3) |
| |
This is a kernel enhancement to configure the cpu affinity of kernel threads via kernel boot option isolcpus=no_kthreads,<isolcpus_params>,<cpulist>
When this option is specified, the cpumask is immediately applied upon thread launch. This does not affect kernel threads that specify cpu and node.
This allows CPU isolation (that is not allowing certain threads to execute on certain CPUs) without using the isolcpus=domain parameter, making it possible to enable load balancing on such CPUs during runtime.
Note-1: this is based off on Wind River's patch at https://github.com/starlingx-staging/stx-integ/blob/master/kernel/kernel-std/centos/patches/affine-compute-kernel-threads.patch
Difference being that this patch is limited to modifying kernel thread cpumask: Behaviour of other threads can be controlled via cgroups or sched_setaffinity.
Note-2: Wind River's patch was based off Christoph Lameter's patch at https://lwn.net/Articles/565932/ with the only difference being the kernel parameter changed from kthread to kthread_cpus.
Changelog:
v2: use isolcpus= subcommand (Thomas Gleixner)
v3: s/MontaVista/Wind River/ on changelog (Chris Friesen) documentation updates (Chris Friesen) undeprecate isolcpus (Chris Friesen) general cleanups (Frederic Weisbecker) separate cpu_possible_mask kthread mask change (Frederic Weisbecker)
|  |