浏览代码

gcov: disable CONFIG_CONSTRUCTORS when not needed by CONFIG_GCOV_KERNEL

CONFIG_CONSTRUCTORS controls support for running constructor functions at
kernel init time.  According to commit b99b87f70c7785ab ("kernel:
constructor support"), gcov (CONFIG_GCOV_KERNEL) needs this.  However,
CONFIG_CONSTRUCTORS currently defaults to y, with no option to disable it,
and CONFIG_GCOV_KERNEL depends on it.  Instead, default it to n and have
CONFIG_GCOV_KERNEL select it, so that the normal case of
CONFIG_GCOV_KERNEL=n will result in CONFIG_CONSTRUCTORS=n.

Observed in the short list of =y values in a minimal kernel configuration.

Signed-off-by: Josh Triplett <josh@joshtriplett.org>
Acked-by: WANG Cong <xiyou.wangcong@gmail.com>
Acked-by: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Josh Triplett 14 年之前
父节点
当前提交
d2c3225879
共有 2 个文件被更改,包括 2 次插入2 次删除
  1. 0 1
      init/Kconfig
  2. 2 1
      kernel/gcov/Kconfig

+ 0 - 1
init/Kconfig

@@ -19,7 +19,6 @@ config DEFCONFIG_LIST
 config CONSTRUCTORS
 config CONSTRUCTORS
 	bool
 	bool
 	depends on !UML
 	depends on !UML
-	default y
 
 
 config HAVE_IRQ_WORK
 config HAVE_IRQ_WORK
 	bool
 	bool

+ 2 - 1
kernel/gcov/Kconfig

@@ -2,7 +2,8 @@ menu "GCOV-based kernel profiling"
 
 
 config GCOV_KERNEL
 config GCOV_KERNEL
 	bool "Enable gcov-based kernel profiling"
 	bool "Enable gcov-based kernel profiling"
-	depends on DEBUG_FS && CONSTRUCTORS
+	depends on DEBUG_FS
+	select CONSTRUCTORS
 	default n
 	default n
 	---help---
 	---help---
 	This option enables gcov-based code profiling (e.g. for code coverage
 	This option enables gcov-based code profiling (e.g. for code coverage