2017-12-09 11:54:02

by Vincent Legoll

[permalink] [raw]
Subject: [PATCH] Make "Memory Debugging" a menuconfig to ease disabling it all

No need to get into the submenu to disable all
"Memory Debugging"-related config entries.

This makes it easier to disable all "Memory Debugging" config options
without entering the submenu. It will also enable one to see that
en/dis-abled state from the outside menu.

This is only intended to change menuconfig UI, not change
the config dependencies.

Signed-off-by: Vincent Legoll <[email protected]>
---
lib/Kconfig.debug | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index 947d3e2ed5c2..5062f52dbeec 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -436,7 +436,10 @@ config DEBUG_KERNEL
Say Y here if you are developing drivers or trying to debug and
identify kernel problems.

-menu "Memory Debugging"
+menuconfig DEBUG_MEMORY
+ bool "Memory Debugging"
+
+if DEBUG_MEMORY

source mm/Kconfig.debug

@@ -731,7 +734,7 @@ config DEBUG_STACKOVERFLOW

source "lib/Kconfig.kasan"

-endmenu # "Memory Debugging"
+endif # DEBUG_MEMORY

config ARCH_HAS_KCOV
bool
--
2.14.1


2017-12-09 12:40:20

by Vincent Legoll

[permalink] [raw]
Subject: Re: [PATCH] Make "Memory Debugging" a menuconfig to ease disabling it all

This patch introduces some Kconfig warnings:

warning: (X86) selects HAVE_DEBUG_KMEMLEAK which has unmet direct
dependencies (DEBUG_MEMORY)
warning: (X86) selects HAVE_ARCH_KASAN which has unmet direct
dependencies (DEBUG_MEMORY)
warning: (X86) selects ARCH_HAS_DEBUG_VIRTUAL which has unmet direct
dependencies (DEBUG_MEMORY)
warning: (X86) selects HAVE_DEBUG_STACKOVERFLOW which has unmet direct
dependencies (DEBUG_MEMORY)

What would be the best way to fix that ?

excluding those config options from the "if DEBUG_MEMORY" code
block seems to alleviate the warnings, but is that OK to do ?

Would moving them out of the if/endif block be acceptable ?

Thanks

--
Vincent Legoll

2017-12-09 17:04:51

by Randy Dunlap

[permalink] [raw]
Subject: Re: [PATCH] Make "Memory Debugging" a menuconfig to ease disabling it all

On 12/09/2017 04:40 AM, Vincent Legoll wrote:
> This patch introduces some Kconfig warnings:
>
> warning: (X86) selects HAVE_DEBUG_KMEMLEAK which has unmet direct
> dependencies (DEBUG_MEMORY)
> warning: (X86) selects HAVE_ARCH_KASAN which has unmet direct
> dependencies (DEBUG_MEMORY)
> warning: (X86) selects ARCH_HAS_DEBUG_VIRTUAL which has unmet direct
> dependencies (DEBUG_MEMORY)
> warning: (X86) selects HAVE_DEBUG_STACKOVERFLOW which has unmet direct
> dependencies (DEBUG_MEMORY)
>
> What would be the best way to fix that ?
>
> excluding those config options from the "if DEBUG_MEMORY" code
> block seems to alleviate the warnings, but is that OK to do ?
>
> Would moving them out of the if/endif block be acceptable ?

That sounds OK to me since none of them have prompts, i.e., they are
not user visible, but they are indicators of what the arch supports.

--
~Randy

2017-12-09 17:40:53

by Vincent Legoll

[permalink] [raw]
Subject: [PATCH,v2] Make "Memory Debugging" a menuconfig to ease disabling it all


The v2 of the patch tries to do that, but the Kconfig.kasan modification is kind
of infortunate, as it moves the HAVE_ARCH_KASAN config option out of that file.

If this is not acceptable please advise on how I can achieve it.

Thanks

2017-12-09 17:41:00

by Vincent Legoll

[permalink] [raw]
Subject: [PATCH] Make "Memory Debugging" a menuconfig to ease disabling it all

No need to get into the submenu to disable all
"Memory Debugging"-related config entries.

This makes it easier to disable all "Memory Debugging" config options
without entering the submenu. It will also enable one to see that
en/dis-abled state from the outside menu.

This is only intended to change menuconfig UI, not change
the config dependencies.

Changes since v1:
Move some invisible config options ouit of the if/endif DEBUG_MEMORY
block to alleviate the warnings:
"selects XXX which has unmet direct dependencies"
This moves the HAVE_ARCH_KASAN out of Kconfig.kasan

Signed-off-by: Vincent Legoll <[email protected]>
---
lib/Kconfig.debug | 28 +++++++++++++++++-----------
lib/Kconfig.kasan | 3 ---
2 files changed, 17 insertions(+), 14 deletions(-)

diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index 947d3e2ed5c2..19ca76e7b9ed 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -436,7 +436,10 @@ config DEBUG_KERNEL
Say Y here if you are developing drivers or trying to debug and
identify kernel problems.

-menu "Memory Debugging"
+menuconfig DEBUG_MEMORY
+ bool "Memory Debugging"
+
+if DEBUG_MEMORY

source mm/Kconfig.debug

@@ -539,9 +542,6 @@ config SLUB_STATS
out which slabs are relevant to a particular load.
Try running: slabinfo -DA

-config HAVE_DEBUG_KMEMLEAK
- bool
-
config DEBUG_KMEMLEAK
bool "Kernel memory leak detector"
depends on DEBUG_KERNEL && HAVE_DEBUG_KMEMLEAK
@@ -636,9 +636,6 @@ config DEBUG_VM_PGFLAGS

If unsure, say N.

-config ARCH_HAS_DEBUG_VIRTUAL
- bool
-
config DEBUG_VIRTUAL
bool "Debug VM translations"
depends on DEBUG_KERNEL && ARCH_HAS_DEBUG_VIRTUAL
@@ -708,9 +705,6 @@ config DEBUG_HIGHMEM
This option enables additional error checking for high memory
systems. Disable for production systems.

-config HAVE_DEBUG_STACKOVERFLOW
- bool
-
config DEBUG_STACKOVERFLOW
bool "Check for stack overflows"
depends on DEBUG_KERNEL && HAVE_DEBUG_STACKOVERFLOW
@@ -731,7 +725,19 @@ config DEBUG_STACKOVERFLOW

source "lib/Kconfig.kasan"

-endmenu # "Memory Debugging"
+endif # DEBUG_MEMORY
+
+config HAVE_ARCH_KASAN
+ bool
+
+config ARCH_HAS_DEBUG_VIRTUAL
+ bool
+
+config HAVE_DEBUG_KMEMLEAK
+ bool
+
+config HAVE_DEBUG_STACKOVERFLOW
+ bool

config ARCH_HAS_KCOV
bool
diff --git a/lib/Kconfig.kasan b/lib/Kconfig.kasan
index bd38aab05929..2396d5116e20 100644
--- a/lib/Kconfig.kasan
+++ b/lib/Kconfig.kasan
@@ -1,6 +1,3 @@
-config HAVE_ARCH_KASAN
- bool
-
if HAVE_ARCH_KASAN

config KASAN
--
2.14.1

2017-12-13 11:04:20

by Vincent Legoll

[permalink] [raw]
Subject: Re: [PATCH] Make "Memory Debugging" a menuconfig to ease disabling it all

Hello,

looks like this one will need another spin, the kbuild test robot
found some config mix that has unmet dependencies.

Please drop until v3

--
Vincent Legoll

2017-12-15 20:21:28

by Pavel Machek

[permalink] [raw]
Subject: Re: [PATCH] Make "Memory Debugging" a menuconfig to ease disabling it all

On Wed 2017-12-13 12:04:17, Vincent Legoll wrote:
> Hello,
>
> looks like this one will need another spin, the kbuild test robot
> found some config mix that has unmet dependencies.
>
> Please drop until v3

While you are at it, care to add a help text? It jumped on me doing
make oldconfig, and I was wondering what it is. It is _not_
self-explanatory.
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html


Attachments:
(No filename) (507.00 B)
signature.asc (181.00 B)
Digital signature
Download all attachments