On 08.08.2018 04:08, Stephen Rothwell wrote: > Hi Kirill, > > On Tue, 07 Aug 2018 18:37:36 +0300 Kirill Tkhai wrote: >> >> This patch kills all CONFIG_SRCU defines and >> the code under !CONFIG_SRCU. >> >> Signed-off-by: Kirill Tkhai > > So what sort of overheads (in terms of code size and performance) are > we adding by having SRCU enabled where it used not to be? SRCU is unconditionally enabled for x86, so I had to use another arch (sparc64) to check the size difference. The config, I used to compile, is attached, SRCU was enabled via: diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig index 2d58c26bff9a..6e9116e356d4 100644 --- a/arch/sparc/Kconfig +++ b/arch/sparc/Kconfig @@ -15,6 +15,7 @@ config SPARC select ARCH_MIGHT_HAVE_PC_PARPORT if SPARC64 && PCI select ARCH_MIGHT_HAVE_PC_SERIO select OF + select SRCU select OF_PROMTREE select HAVE_IDE select HAVE_OPROFILE $ size image.srcu.disabled text data bss dec hex filename 5117546 8030506 1968104 15116156 e6a77c image.srcu.disabled $ size image.srcu.enabled text data bss dec hex filename 5126175 8064346 1968104 15158625 e74d61 image.srcu.enabled The difference is: 15158625-15116156 = 42469 ~41Kb I have not ideas about performance overhead measurements. If you have ideas, where they may occur, please say. At the first sight, there should not be a problem, since SRCU is enabled in x86 by default.