[PATCH] kernel: disable CONFIG_RCU_EXPERT and friends

Rui Salvaterra rsalvaterra at gmail.com
Sun Aug 22 01:01:12 PDT 2021


Based on the existing documentation [1][2], I dare anyone to demonstrate that
we need to fine-tune these RCU parameters. The (performance) breakage potential
for doing so is immense, so let's just please put down this loaded footgun.
Disable CONFIG_RCU_EXPERT and dependent symbols.

[1] https://www.kernel.org/doc/Documentation/RCU/Design/Data-Structures/Data-Structures.html
[2] https://lwn.net/Articles/777214/

Signed-off-by: Rui Salvaterra <rsalvaterra at gmail.com>
---
 target/linux/generic/config-5.10 | 7 +------
 target/linux/generic/config-5.4  | 6 +-----
 2 files changed, 2 insertions(+), 11 deletions(-)

diff --git a/target/linux/generic/config-5.10 b/target/linux/generic/config-5.10
index f944f1718f..91f137fbc3 100644
--- a/target/linux/generic/config-5.10
+++ b/target/linux/generic/config-5.10
@@ -4631,12 +4631,8 @@ CONFIG_PWRSEQ_SIMPLE=y
 CONFIG_RCU_CPU_STALL_TIMEOUT=60
 # CONFIG_RCU_EQS_DEBUG is not set
 # CONFIG_RCU_EXPEDITE_BOOT is not set
-CONFIG_RCU_EXPERT=y
-CONFIG_RCU_FANOUT=32
-CONFIG_RCU_FANOUT_LEAF=16
-# CONFIG_RCU_FAST_NO_HZ is not set
+# CONFIG_RCU_EXPERT is not set
 CONFIG_RCU_KTHREAD_PRIO=0
-# CONFIG_RCU_NOCB_CPU is not set
 # CONFIG_RCU_PERF_TEST is not set
 # CONFIG_RCU_REF_SCALE_TEST is not set
 # CONFIG_RCU_SCALE_TEST is not set
@@ -5995,7 +5991,6 @@ CONFIG_SYSVIPC_SYSCTL=y
 # CONFIG_TARGET_CORE is not set
 # CONFIG_TASKSTATS is not set
 # CONFIG_TASKS_RCU is not set
-CONFIG_TASKS_TRACE_RCU_READ_MB=y
 # CONFIG_TASK_XACCT is not set
 # CONFIG_TC35815 is not set
 # CONFIG_TCG_ATMEL is not set
diff --git a/target/linux/generic/config-5.4 b/target/linux/generic/config-5.4
index 45d8f0976e..06f5e43a6d 100644
--- a/target/linux/generic/config-5.4
+++ b/target/linux/generic/config-5.4
@@ -4262,12 +4262,8 @@ CONFIG_PWRSEQ_SIMPLE=y
 CONFIG_RCU_CPU_STALL_TIMEOUT=60
 # CONFIG_RCU_EQS_DEBUG is not set
 # CONFIG_RCU_EXPEDITE_BOOT is not set
-CONFIG_RCU_EXPERT=y
-CONFIG_RCU_FANOUT=32
-CONFIG_RCU_FANOUT_LEAF=16
-# CONFIG_RCU_FAST_NO_HZ is not set
+# CONFIG_RCU_EXPERT is not set
 CONFIG_RCU_KTHREAD_PRIO=0
-# CONFIG_RCU_NOCB_CPU is not set
 # CONFIG_RCU_PERF_TEST is not set
 # CONFIG_RCU_TORTURE_TEST is not set
 CONFIG_RCU_TORTURE_TEST_SLOW_INIT_DELAY=3
-- 
2.33.0




More information about the openwrt-devel mailing list