2013-10-26 20:58:05

by Krzysztof Mazur

[permalink] [raw]
Subject: [PATCH] DYNAMIC_DEBUG: use select DEBUG_FS instead of depends on

Depending on options that are configured later makes them hard
to enable unless the user knows that he must go backwards.

Signed-off-by: Krzysztof Mazur <[email protected]>
---
lib/Kconfig.debug | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index 06344d9..d5c9247 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -48,7 +48,7 @@ config DYNAMIC_DEBUG
bool "Enable dynamic printk() support"
default n
depends on PRINTK
- depends on DEBUG_FS
+ select DEBUG_FS
help

Compiles debug level messages into the kernel, which would not
--
1.8.4.1.635.g55556a5


2013-10-27 03:28:15

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Re: [PATCH] DYNAMIC_DEBUG: use select DEBUG_FS instead of depends on

On Sat, Oct 26, 2013 at 10:58:13PM +0200, Krzysztof Mazur wrote:
> Depending on options that are configured later makes them hard
> to enable unless the user knows that he must go backwards.

Really? We've had this for well over 2 years, people are confused about
this?

Where?

2013-10-27 08:01:56

by Krzysztof Mazur

[permalink] [raw]
Subject: Re: [PATCH] DYNAMIC_DEBUG: use select DEBUG_FS instead of depends on

On Sat, Oct 26, 2013 at 08:30:00PM -0700, Greg Kroah-Hartman wrote:
> On Sat, Oct 26, 2013 at 10:58:13PM +0200, Krzysztof Mazur wrote:
> > Depending on options that are configured later makes them hard
> > to enable unless the user knows that he must go backwards.
>
> Really? We've had this for well over 2 years, people are confused about
> this?
>
> Where?

The v3.10 is ok - CONFIG_DYNAMIC_DEBUG is after CONFIG_DEBUG_FS.

Maybe it's just me, because on my config I have CONFIG_DEBUG_FS=y,
and on the system I was testing usbatm I had CONFIG_DEBUG_FS=n.

BTW, on x86_64 to disable CONFIG_DEBUG_FS you need to disable
CONFIG_AMD_IOMMU_STATS, which is enabled by default in the
x86_64_defconfig (I think that CONFIG_AMD_IOMMU_STATS=n it's
a better default). If you enable CONFIG_DEBUG_KERNEL you
need to disable CONFIG_FTRACE which is enabled by default.
So a lot of users will have CONFIG_DEBUG_FS already selected.

Thanks,
Krzysiek

2013-10-27 14:38:16

by Randy Dunlap

[permalink] [raw]
Subject: Re: [PATCH] DYNAMIC_DEBUG: use select DEBUG_FS instead of depends on

On 10/27/13 01:01, Krzysztof Mazur wrote:
> On Sat, Oct 26, 2013 at 08:30:00PM -0700, Greg Kroah-Hartman wrote:
>> On Sat, Oct 26, 2013 at 10:58:13PM +0200, Krzysztof Mazur wrote:
>>> Depending on options that are configured later makes them hard
>>> to enable unless the user knows that he must go backwards.
>>
>> Really? We've had this for well over 2 years, people are confused about
>> this?
>>
>> Where?
>
> The v3.10 is ok - CONFIG_DYNAMIC_DEBUG is after CONFIG_DEBUG_FS.
>
> Maybe it's just me, because on my config I have CONFIG_DEBUG_FS=y,
> and on the system I was testing usbatm I had CONFIG_DEBUG_FS=n.
>
> BTW, on x86_64 to disable CONFIG_DEBUG_FS you need to disable
> CONFIG_AMD_IOMMU_STATS, which is enabled by default in the
> x86_64_defconfig (I think that CONFIG_AMD_IOMMU_STATS=n it's
> a better default). If you enable CONFIG_DEBUG_KERNEL you
> need to disable CONFIG_FTRACE which is enabled by default.
> So a lot of users will have CONFIG_DEBUG_FS already selected.

You are making a good argument for not using 'select' at all.

--
~Randy

2013-10-27 15:57:29

by Krzysztof Mazur

[permalink] [raw]
Subject: Re: [PATCH] DYNAMIC_DEBUG: use select DEBUG_FS instead of depends on

On Sun, Oct 27, 2013 at 07:38:08AM -0700, Randy Dunlap wrote:
> On 10/27/13 01:01, Krzysztof Mazur wrote:
> > On Sat, Oct 26, 2013 at 08:30:00PM -0700, Greg Kroah-Hartman wrote:
> >> On Sat, Oct 26, 2013 at 10:58:13PM +0200, Krzysztof Mazur wrote:
> >>> Depending on options that are configured later makes them hard
> >>> to enable unless the user knows that he must go backwards.
> >>
> >> Really? We've had this for well over 2 years, people are confused about
> >> this?
> >>
> >> Where?
> >
> > The v3.10 is ok - CONFIG_DYNAMIC_DEBUG is after CONFIG_DEBUG_FS.
> >
> > Maybe it's just me, because on my config I have CONFIG_DEBUG_FS=y,
> > and on the system I was testing usbatm I had CONFIG_DEBUG_FS=n.
> >
> > BTW, on x86_64 to disable CONFIG_DEBUG_FS you need to disable
> > CONFIG_AMD_IOMMU_STATS, which is enabled by default in the
> > x86_64_defconfig (I think that CONFIG_AMD_IOMMU_STATS=n it's
> > a better default). If you enable CONFIG_DEBUG_KERNEL you
> > need to disable CONFIG_FTRACE which is enabled by default.
> > So a lot of users will have CONFIG_DEBUG_FS already selected.
>
> You are making a good argument for not using 'select' at all.
>

I don't think that using 'select' is bad, but 'select' + 'default y'
+ defconfigs currently enable a lot of unwanted features. The
'select' chain that enables DEBUG_FS is even better: EMBEDDED selects EXPERT,
EXPERT selects DEBUG_KERNEL, DEBUG_KERNEL enables FTRACE by 'default y'
and FTRACE selects DEBUG_FS.

I don't care if we add select DEBUG_FS in DYNAMIC_DEBUG or change
the order of "printk and dmesg options" and "Compile-time checks and
compiler options" submenus, or just do nothing. I just used
'select DEBUG_FS' because everything else in the lib/Kconfig.debug
already use it.

Maybe "make menuconfig" and "make xconfig" are just broken, because
"make config" does the right thing, the configurator is restarted and
you will be asked for all earlier options that you missed.

Krzysiek