summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOleksij Rempel <o.rempel@pengutronix.de>2020-04-04 09:08:04 +0200
committerRobert Schwebel <r.schwebel@pengutronix.de>2020-04-24 14:22:33 +0200
commit7b40e23fd7b46de05a61b1bd15ca2fb4b5cc05ee (patch)
tree362284cad795ac07a3702cff87c1d933d2824daa
parentbbb5d9fc8126c68bb476d4cf534c6b8f5a6359a9 (diff)
downloadDistroKit-7b40e23fd7b46de05a61b1bd15ca2fb4b5cc05ee.tar.gz
DistroKit-7b40e23fd7b46de05a61b1bd15ca2fb4b5cc05ee.tar.xz
MIPS: kernel: malta: enable PREEMPT support
The typical embedded use-cases are more sensitive to latency than throughput. Thus a fully preemptible kernel is preferred. Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
-rw-r--r--configs/platform-mips/kernelconfig2
-rw-r--r--configs/platform-mips/kernelconfig-ar93312
-rw-r--r--configs/platform-mips/kernelconfig-malta16
-rw-r--r--configs/platform-mips/kernelconfig-malta.diff14
4 files changed, 11 insertions, 23 deletions
diff --git a/configs/platform-mips/kernelconfig b/configs/platform-mips/kernelconfig
index 6bf2da8..65d6a18 100644
--- a/configs/platform-mips/kernelconfig
+++ b/configs/platform-mips/kernelconfig
@@ -2802,7 +2802,7 @@ CONFIG_WQ_WATCHDOG=y
# end of Scheduler Debugging
# CONFIG_DEBUG_TIMEKEEPING is not set
-CONFIG_DEBUG_PREEMPT=y
+# CONFIG_DEBUG_PREEMPT is not set
#
# Lock Debugging (spinlocks, mutexes, etc...)
diff --git a/configs/platform-mips/kernelconfig-ar9331 b/configs/platform-mips/kernelconfig-ar9331
index 46327e0..910226c 100644
--- a/configs/platform-mips/kernelconfig-ar9331
+++ b/configs/platform-mips/kernelconfig-ar9331
@@ -2786,7 +2786,7 @@ CONFIG_WQ_WATCHDOG=y
# end of Scheduler Debugging
# CONFIG_DEBUG_TIMEKEEPING is not set
-CONFIG_DEBUG_PREEMPT=y
+# CONFIG_DEBUG_PREEMPT is not set
#
# Lock Debugging (spinlocks, mutexes, etc...)
diff --git a/configs/platform-mips/kernelconfig-malta b/configs/platform-mips/kernelconfig-malta
index f0bc35c..28ea08e 100644
--- a/configs/platform-mips/kernelconfig-malta
+++ b/configs/platform-mips/kernelconfig-malta
@@ -76,9 +76,11 @@ CONFIG_NO_HZ=y
CONFIG_HIGH_RES_TIMERS=y
# end of Timers subsystem
-CONFIG_PREEMPT_NONE=y
+# CONFIG_PREEMPT_NONE is not set
# CONFIG_PREEMPT_VOLUNTARY is not set
-# CONFIG_PREEMPT is not set
+CONFIG_PREEMPT=y
+CONFIG_PREEMPT_COUNT=y
+CONFIG_PREEMPTION=y
#
# CPU/Task time and stats accounting
@@ -96,9 +98,11 @@ CONFIG_CPU_ISOLATION=y
# RCU Subsystem
#
CONFIG_TREE_RCU=y
+CONFIG_PREEMPT_RCU=y
# CONFIG_RCU_EXPERT is not set
CONFIG_SRCU=y
CONFIG_TREE_SRCU=y
+CONFIG_TASKS_RCU=y
CONFIG_RCU_STALL_COMMON=y
CONFIG_RCU_NEED_SEGCBLIST=y
# end of RCU Subsystem
@@ -571,11 +575,7 @@ CONFIG_MQ_IOSCHED_KYBER=y
# end of IO Schedulers
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_USE_QUEUED_SPINLOCKS=y
CONFIG_QUEUED_SPINLOCKS=y
CONFIG_ARCH_USE_QUEUED_RWLOCKS=y
@@ -3599,6 +3599,7 @@ CONFIG_SCHED_DEBUG=y
# end of Scheduler Debugging
# CONFIG_DEBUG_TIMEKEEPING is not set
+# CONFIG_DEBUG_PREEMPT is not set
#
# Lock Debugging (spinlocks, mutexes, etc...)
@@ -3670,6 +3671,7 @@ CONFIG_DYNAMIC_FTRACE=y
# CONFIG_STACK_TRACER is not set
# CONFIG_PREEMPTIRQ_EVENTS is not set
# CONFIG_IRQSOFF_TRACER is not set
+# CONFIG_PREEMPT_TRACER is not set
# CONFIG_SCHED_TRACER is not set
# CONFIG_HWLAT_TRACER is not set
# CONFIG_FTRACE_SYSCALLS is not set
diff --git a/configs/platform-mips/kernelconfig-malta.diff b/configs/platform-mips/kernelconfig-malta.diff
index a7096da..858f897 100644
--- a/configs/platform-mips/kernelconfig-malta.diff
+++ b/configs/platform-mips/kernelconfig-malta.diff
@@ -301,7 +301,6 @@ CONFIG_DAVICOM_PHY=m
# CONFIG_DEBUG_GPIO is undefined
# CONFIG_DEBUG_PER_CPU_MAPS is not set
# CONFIG_DEBUG_PINCTRL is undefined
-# CONFIG_DEBUG_PREEMPT is undefined
# CONFIG_DEFAULT_CUBIC is undefined
# CONFIG_DEFAULT_RENO is undefined
# CONFIG_DEFAULT_SFQ is not set
@@ -596,11 +595,6 @@ CONFIG_INET_TCP_DIAG=y
CONFIG_INET_TUNNEL=y
# CONFIG_INET_UDP_DIAG is not set
CONFIG_INET_XFRM_TUNNEL=m
-CONFIG_INLINE_READ_UNLOCK=y
-CONFIG_INLINE_READ_UNLOCK_IRQ=y
-CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
-CONFIG_INLINE_WRITE_UNLOCK=y
-CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
CONFIG_INPUT=y
# CONFIG_INPUT_EVBUG is not set
# CONFIG_INPUT_EVDEV is not set
@@ -1330,12 +1324,6 @@ CONFIG_POWER_RESET_SYSCON=y
# CONFIG_PPP_MPPE is undefined
# CONFIG_PPP_MULTILINK is undefined
# CONFIG_PPP_SYNC_TTY is undefined
-# CONFIG_PREEMPT is not set
-# CONFIG_PREEMPTION is undefined
-# CONFIG_PREEMPT_COUNT is undefined
-CONFIG_PREEMPT_NONE=y
-# CONFIG_PREEMPT_RCU is undefined
-# CONFIG_PREEMPT_TRACER is undefined
CONFIG_PRISM54=m
CONFIG_PROC_KCORE=y
CONFIG_PROC_PAGE_MONITOR=y
@@ -1687,7 +1675,6 @@ CONFIG_SYS_SUPPORTS_SMARTMIPS=y
CONFIG_SYS_SUPPORTS_SMP=y
CONFIG_SYS_SUPPORTS_VPE_LOADER=y
# CONFIG_SYS_SUPPORTS_ZBOOT_UART_PROM is undefined
-# CONFIG_TASKS_RCU is undefined
CONFIG_TC35815=m
# CONFIG_TCP_CONG_ADVANCED is not set
# CONFIG_TCP_CONG_BBR is undefined
@@ -1736,7 +1723,6 @@ CONFIG_UIO_CIF=m
# CONFIG_UIO_PRUSS is not set
# CONFIG_UIO_SERCOS3 is not set
# CONFIG_ULTRIX_PARTITION is undefined
-# CONFIG_UNINLINE_SPIN_UNLOCK is undefined
# CONFIG_UNISYSSPAR is undefined
# CONFIG_UNIXWARE_DISKLABEL is undefined
# CONFIG_USBPCWATCHDOG is undefined