[RFC PATCH v2 5/5] kernel: drop PREEMPT_NONE compile time option

From: Michal Hocko
Date: Fri Oct 09 2020 - 08:30:09 EST


From: Michal Hocko <mhocko@xxxxxxxx>

Now that preempt_mode command line parameter supports both preempt_none
and preempt_voluntary we do not necessarily need a config option for
this preemption mode and we can reduce the overall config space a bit.

Suggested-by: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
Signed-off-by: Michal Hocko <mhocko@xxxxxxxx>
---
kernel/Kconfig.preempt | 21 ++++-----------------
1 file changed, 4 insertions(+), 17 deletions(-)

diff --git a/kernel/Kconfig.preempt b/kernel/Kconfig.preempt
index e142f36dd429..e19b7d3a8d3c 100644
--- a/kernel/Kconfig.preempt
+++ b/kernel/Kconfig.preempt
@@ -2,23 +2,10 @@

choice
prompt "Preemption Model"
- default PREEMPT_NONE
-
-config PREEMPT_NONE
- bool "No Forced Preemption (Server)"
- help
- This is the traditional Linux preemption model, geared towards
- throughput. It will still provide good latencies most of the
- time, but there are no guarantees and occasional longer delays
- are possible.
-
- Select this option if you are building a kernel for a server or
- scientific/computation system, or if you want to maximize the
- raw processing power of the kernel, irrespective of scheduling
- latencies.
+ default PREEMPT_VOLUNTARY

config PREEMPT_VOLUNTARY
- bool "Voluntary Kernel Preemption (Desktop)"
+ bool "Voluntary Kernel Preemption (Throughput oriented workloads)"
help
This option reduces the latency of the kernel by adding more
"explicit preemption points" to the kernel code. These new
@@ -35,7 +22,7 @@ config PREEMPT_VOLUNTARY
Select this if you are building a kernel for a desktop system.

config PREEMPT
- bool "Preemptible Kernel (Low-Latency Desktop)"
+ bool "Preemptible Kernel (Low-Latency oriented workloads)"
depends on !ARCH_NO_PREEMPT
select PREEMPTION
select UNINLINE_SPIN_UNLOCK if !ARCH_INLINE_SPIN_UNLOCK
@@ -75,7 +62,7 @@ endchoice

config PREEMPT_DYNAMIC
bool "Allow boot time preemption model selection"
- depends on PREEMPT_NONE || PREEMPT_VOLUNTARY
+ depends on PREEMPT_VOLUNTARY
help
This option allows to define the preemption model on the kernel
command line parameter and thus override the default preemption
--
2.28.0