diff options
Diffstat (limited to 'init')
-rw-r--r-- | init/Kconfig | 9 | ||||
-rw-r--r-- | init/main.c | 4 |
2 files changed, 11 insertions, 2 deletions
diff --git a/init/Kconfig b/init/Kconfig index 3c1faaa2af4a..2431e0504479 100644 --- a/init/Kconfig +++ b/init/Kconfig @@ -472,6 +472,13 @@ config TASK_IO_ACCOUNTING endmenu # "CPU/Task time and stats accounting" +config CPU_ISOLATION + bool "CPU isolation" + help + Make sure that CPUs running critical tasks are not disturbed by + any source of "noise" such as unbound workqueues, timers, kthreads... + Unbound jobs get offloaded to housekeeping CPUs. + source "kernel/rcu/Kconfig" config BUILD_BIN2C @@ -1752,7 +1759,7 @@ config MODULE_SIG help Check modules for valid signatures upon load: the signature is simply appended to the module. For more information see - Documentation/module-signing.txt. + <file:Documentation/admin-guide/module-signing.rst>. Note that this option adds the OpenSSL development packages as a kernel build dependency so that the signing tool can use its crypto diff --git a/init/main.c b/init/main.c index 0ee9c6866ada..3bdd8da90f69 100644 --- a/init/main.c +++ b/init/main.c @@ -46,6 +46,7 @@ #include <linux/cgroup.h> #include <linux/efi.h> #include <linux/tick.h> +#include <linux/sched/isolation.h> #include <linux/interrupt.h> #include <linux/taskstats_kern.h> #include <linux/delayacct.h> @@ -606,6 +607,7 @@ asmlinkage __visible void __init start_kernel(void) early_irq_init(); init_IRQ(); tick_init(); + housekeeping_init(); rcu_init_nohz(); init_timers(); hrtimers_init(); @@ -664,12 +666,12 @@ asmlinkage __visible void __init start_kernel(void) debug_objects_mem_init(); setup_per_cpu_pageset(); numa_policy_init(); + acpi_early_init(); if (late_time_init) late_time_init(); calibrate_delay(); pidmap_init(); anon_vma_init(); - acpi_early_init(); #ifdef CONFIG_X86 if (efi_enabled(EFI_RUNTIME_SERVICES)) efi_enter_virtual_mode(); |