2018-01-02 11:13:15

by Geert Uytterhoeven

[permalink] [raw]
Subject: [PATCH] sched/isolation: Make CPU_ISOLATION depend on SMP or COMPILE_TEST

On uniprocessor systems, critical and non-critical tasks cannot be
isolated, as there is only a single CPU core. Hence enabling CPU
isolation by default on such systems does not make much sense.

Instead of changing the default for !SMP, fix this by making the feature
depend on SMP, with an override for compile-testing. Note that its sole
selector (NO_HZ_FULL) already depends on SMP.

This decreases kernel size for a default uniprocessor kernel by ca. 1
KiB.

Fixes: 2c43838c99d9d23f ("sched/isolation: Enable CONFIG_CPU_ISOLATION=y by default")
Signed-off-by: Geert Uytterhoeven <[email protected]>
---
init/Kconfig | 1 +
1 file changed, 1 insertion(+)

diff --git a/init/Kconfig b/init/Kconfig
index 690a381adee0d164..c1221332e128c700 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -461,6 +461,7 @@ endmenu # "CPU/Task time and stats accounting"

config CPU_ISOLATION
bool "CPU isolation"
+ depends on SMP || COMPILE_TEST
default y
help
Make sure that CPUs running critical tasks are not disturbed by
--
2.7.4


2018-01-02 23:25:14

by Nicolas Pitre

[permalink] [raw]
Subject: Re: [PATCH] sched/isolation: Make CPU_ISOLATION depend on SMP or COMPILE_TEST

On Tue, 2 Jan 2018, Geert Uytterhoeven wrote:

> On uniprocessor systems, critical and non-critical tasks cannot be
> isolated, as there is only a single CPU core. Hence enabling CPU
> isolation by default on such systems does not make much sense.
>
> Instead of changing the default for !SMP, fix this by making the feature
> depend on SMP, with an override for compile-testing. Note that its sole
> selector (NO_HZ_FULL) already depends on SMP.
>
> This decreases kernel size for a default uniprocessor kernel by ca. 1
> KiB.
>
> Fixes: 2c43838c99d9d23f ("sched/isolation: Enable CONFIG_CPU_ISOLATION=y by default")
> Signed-off-by: Geert Uytterhoeven <[email protected]>

Acked-by: Nicolas Pitre <[email protected]>


> ---
> init/Kconfig | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/init/Kconfig b/init/Kconfig
> index 690a381adee0d164..c1221332e128c700 100644
> --- a/init/Kconfig
> +++ b/init/Kconfig
> @@ -461,6 +461,7 @@ endmenu # "CPU/Task time and stats accounting"
>
> config CPU_ISOLATION
> bool "CPU isolation"
> + depends on SMP || COMPILE_TEST
> default y
> help
> Make sure that CPUs running critical tasks are not disturbed by
> --
> 2.7.4
>
>

Subject: [tip:sched/urgent] sched/isolation: Make CONFIG_CPU_ISOLATION=y depend on SMP or COMPILE_TEST

Commit-ID: 414a2dc138838642d28938506e31ad461648b898
Gitweb: https://git.kernel.org/tip/414a2dc138838642d28938506e31ad461648b898
Author: Geert Uytterhoeven <[email protected]>
AuthorDate: Tue, 2 Jan 2018 12:13:10 +0100
Committer: Ingo Molnar <[email protected]>
CommitDate: Mon, 8 Jan 2018 20:04:07 +0100

sched/isolation: Make CONFIG_CPU_ISOLATION=y depend on SMP or COMPILE_TEST

On uniprocessor systems, critical and non-critical tasks cannot be
isolated, as there is only a single CPU core. Hence enabling CPU
isolation by default on such systems does not make much sense.

Instead of changing the default for !SMP, fix this by making the feature
depend on SMP, with an override for compile-testing. Note that its sole
selector (NO_HZ_FULL) already depends on SMP.

This decreases kernel size for a default uniprocessor kernel by ca. 1 KiB.

Signed-off-by: Geert Uytterhoeven <[email protected]>
Acked-by: Nicolas Pitre <[email protected]>
Cc: Frederic Weisbecker <[email protected]>
Cc: Linus Torvalds <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Fixes: 2c43838c99d9d23f ("sched/isolation: Enable CONFIG_CPU_ISOLATION=y by default")
Link: http://lkml.kernel.org/r/[email protected]
Signed-off-by: Ingo Molnar <[email protected]>
---
init/Kconfig | 1 +
1 file changed, 1 insertion(+)

diff --git a/init/Kconfig b/init/Kconfig
index 690a381..c122133 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -461,6 +461,7 @@ endmenu # "CPU/Task time and stats accounting"

config CPU_ISOLATION
bool "CPU isolation"
+ depends on SMP || COMPILE_TEST
default y
help
Make sure that CPUs running critical tasks are not disturbed by