diff options
author | Robert Schwebel <r.schwebel@pengutronix.de> | 2019-01-09 17:42:01 +0100 |
---|---|---|
committer | Robert Schwebel <r.schwebel@pengutronix.de> | 2019-01-09 17:42:01 +0100 |
commit | 4153aaa00bb508e548ec74077ee296bdd2033439 (patch) | |
tree | dd4b5fd65f64a570c22c569f641f87c0f90676da | |
parent | b874f827bb20dc08f23ef1da0e20e445dad2d0ac (diff) | |
download | DistroKit-4153aaa00bb508e548ec74077ee296bdd2033439.tar.gz DistroKit-4153aaa00bb508e548ec74077ee296bdd2033439.tar.xz |
platform-rpi: kernel: enable PREEMPT
"reason" says:
The typical embedded use-cases are more sensitive to latency than
throughput. Thus a fully preemptible kernel is preferred.
Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
-rw-r--r-- | configs/platform-rpi/kernelconfig | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/configs/platform-rpi/kernelconfig b/configs/platform-rpi/kernelconfig index 72b7e8a..fc2e091 100644 --- a/configs/platform-rpi/kernelconfig +++ b/configs/platform-rpi/kernelconfig @@ -67,8 +67,9 @@ CONFIG_NO_HZ_IDLE=y CONFIG_NO_HZ=y CONFIG_HIGH_RES_TIMERS=y # CONFIG_PREEMPT_NONE is not set -CONFIG_PREEMPT_VOLUNTARY=y -# CONFIG_PREEMPT is not set +# CONFIG_PREEMPT_VOLUNTARY is not set +CONFIG_PREEMPT=y +CONFIG_PREEMPT_COUNT=y # # CPU/Task time and stats accounting @@ -84,10 +85,13 @@ CONFIG_BSD_PROCESS_ACCT_V3=y # # RCU Subsystem # -CONFIG_TINY_RCU=y +CONFIG_PREEMPT_RCU=y # CONFIG_RCU_EXPERT is not set CONFIG_SRCU=y -CONFIG_TINY_SRCU=y +CONFIG_TREE_SRCU=y +CONFIG_TASKS_RCU=y +CONFIG_RCU_STALL_COMMON=y +CONFIG_RCU_NEED_SEGCBLIST=y CONFIG_BUILD_BIN2C=y CONFIG_IKCONFIG=y CONFIG_IKCONFIG_PROC=y @@ -539,11 +543,7 @@ CONFIG_MQ_IOSCHED_DEADLINE=y CONFIG_MQ_IOSCHED_KYBER=y # CONFIG_IOSCHED_BFQ is not set CONFIG_ASN1=y -CONFIG_INLINE_SPIN_UNLOCK_IRQ=y -CONFIG_INLINE_READ_UNLOCK=y -CONFIG_INLINE_READ_UNLOCK_IRQ=y -CONFIG_INLINE_WRITE_UNLOCK=y -CONFIG_INLINE_WRITE_UNLOCK_IRQ=y +CONFIG_UNINLINE_SPIN_UNLOCK=y CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y CONFIG_FREEZER=y @@ -3176,6 +3176,7 @@ CONFIG_SCHED_DEBUG=y # CONFIG_SCHEDSTATS is not set CONFIG_SCHED_STACK_END_CHECK=y # CONFIG_DEBUG_TIMEKEEPING is not set +CONFIG_DEBUG_PREEMPT=y # # Lock Debugging (spinlocks, mutexes, etc...) @@ -3207,6 +3208,7 @@ CONFIG_DEBUG_BUGVERBOSE=y # # CONFIG_RCU_PERF_TEST is not set # CONFIG_RCU_TORTURE_TEST is not set +CONFIG_RCU_CPU_STALL_TIMEOUT=21 # CONFIG_RCU_TRACE is not set # CONFIG_RCU_EQS_DEBUG is not set # CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set @@ -3236,6 +3238,7 @@ CONFIG_FUNCTION_TRACER=y CONFIG_FUNCTION_GRAPH_TRACER=y # CONFIG_PREEMPTIRQ_EVENTS is not set # CONFIG_IRQSOFF_TRACER is not set +# CONFIG_PREEMPT_TRACER is not set CONFIG_SCHED_TRACER=y # CONFIG_HWLAT_TRACER is not set # CONFIG_FTRACE_SYSCALLS is not set |