From 11097a0367e48954ecf616f9b0df48d86835dd0d Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN" Date: Sun, 11 Aug 2013 16:07:50 +0200 Subject: [PATCH] modules: do not depend on kconfig to set 'modules' option to symbol MODULES Currently, the MODULES symbol is special-cased in different places in the kconfig language. For example, if no symbol is defined to enable tristates, then kconfig looks up for a symbol named 'MODULES', and forces the 'modules' option onto that symbol. This causes problems as such: - since MODULES is special-cased, reading the configuration with KCONFIG_ALLCONFIG set will forcibly set MODULES to be 'valid' (ie. it has a valid value), when no such value was previously set. So MODULES defaults to 'n' unless it is present in KCONFIG_ALLCONFIG - other third-party projects may decide that 'MODULES' plays a different role for them This has been exposed by cset #cfa98f2e: kconfig: do not override symbols already set and reported by Stephen in: http://marc.info/?l=linux-next&m=137592137915234&w=2 As suggested by Sam, we explicitly define the MODULES symbol to be the tristate-enabler. This will allow us to drop special-casing of MODULES in the kconfig language, later. (Note: this patch is not a fix to Stephen's issue, just a first step). Reported-by: Stephen Rothwell Signed-off-by: yann.morin.1998@free.fr Cc: Stephen Rothwell Cc: Sam Ravnborg Cc: Michal Marek Cc: Kevin Hilman Cc: sedat.dilek@gmail.com Cc: Theodore Ts'o --- init/Kconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/init/Kconfig b/init/Kconfig index 247084be0590..4d55e81deff0 100644 --- a/init/Kconfig +++ b/init/Kconfig @@ -1666,6 +1666,7 @@ config BASE_SMALL menuconfig MODULES bool "Enable loadable module support" + option modules help Kernel modules are small pieces of compiled code which can be inserted in the running kernel, rather than being -- 2.20.1