Messages in this thread Patch in this message |  | | From | Salvatore Dipietro <> | | Subject | [PATCH 1/1] sched: Restore PREEMPT_NONE as default | | Date | Fri, 3 Apr 2026 19:19:37 +0000 |
| |
Commit 7dadeaa6e851 ("sched: Further restrict the preemption modes") changed the default preemption model to PREEMPT_LAZY on architectures that support it and made PREEMPT_NONE depend on ARCH_NO_PREEMPT.
This causes a 0.51x throughput regression on PostgreSQL pgbench (simple-update) with 1024 clients on a 96-vCPU Graviton4 arm64 system. Perf profiling shows 55% of CPU time spinning in PostgreSQL's userspace spinlock (s_lock()) under PREEMPT_LAZY.
Restore PREEMPT_NONE as the default preemption model, remove the ARCH_NO_PREEMPT dependency from PREEMPT_NONE, and remove the ARCH_HAS_PREEMPT_LAZY restriction from PREEMPT_VOLUNTARY.
Fixes: 7dadeaa6e851 ("sched: Further restrict the preemption modes") Signed-off-by: Salvatore Dipietro <dipiets@amazon.it> --- kernel/Kconfig.preempt | 3 --- 1 file changed, 3 deletions(-)
diff --git a/kernel/Kconfig.preempt b/kernel/Kconfig.preempt index 88c594c6d7fc..da326800c1c9 100644 --- a/kernel/Kconfig.preempt +++ b/kernel/Kconfig.preempt @@ -16,13 +16,11 @@ config ARCH_HAS_PREEMPT_LAZY choice prompt "Preemption Model" - default PREEMPT_LAZY if ARCH_HAS_PREEMPT_LAZY default PREEMPT_NONE config PREEMPT_NONE bool "No Forced Preemption (Server)" depends on !PREEMPT_RT - depends on ARCH_NO_PREEMPT select PREEMPT_NONE_BUILD if !PREEMPT_DYNAMIC help This is the traditional Linux preemption model, geared towards @@ -37,7 +35,6 @@ config PREEMPT_NONE config PREEMPT_VOLUNTARY bool "Voluntary Kernel Preemption (Desktop)" - depends on !ARCH_HAS_PREEMPT_LAZY depends on !ARCH_NO_PREEMPT depends on !PREEMPT_RT select PREEMPT_VOLUNTARY_BUILD if !PREEMPT_DYNAMIC -- 2.50.1 (Apple Git-155)
AMAZON DEVELOPMENT CENTER ITALY SRL, viale Monte Grappa 3/5, 20124 Milano, Italia, Registro delle Imprese di Milano Monza Brianza Lodi REA n. 2504859, Capitale Sociale: 10.000 EUR i.v., Cod. Fisc. e P.IVA 10100050961, Societa con Socio Unico
|  |