2023-02-22 23:21:11

by Vernon Yang

[permalink] [raw]
Subject: [PATCH] mm/slub: fix help comment of SLUB_DEBUG[_ON]

Since commit 081248de0a02 ("kset: move /sys/slab to /sys/kernel/slab"),
the SYSFS path of slab was modified, so fix up the help comment of
SLUB_DEBUG to use the correct one.

And now the "slub_debug" parameter on boot that is support for more
fine grained debug control, so fix up help comment of SLUB_DEBUG_ON
for "no support" to "support".

Signed-off-by: Vernon Yang <[email protected]>
---
mm/Kconfig.debug | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/mm/Kconfig.debug b/mm/Kconfig.debug
index fca699ad1fb0..732043bf56c6 100644
--- a/mm/Kconfig.debug
+++ b/mm/Kconfig.debug
@@ -61,8 +61,8 @@ config SLUB_DEBUG
help
SLUB has extensive debug support features. Disabling these can
result in significant savings in code size. This also disables
- SLUB sysfs support. /sys/slab will not exist and there will be
- no support for cache validation etc.
+ SLUB sysfs support. /sys/kernel/slab will not exist and there
+ will be no support for cache validation etc.

config SLUB_DEBUG_ON
bool "SLUB debugging on by default"
@@ -73,10 +73,10 @@ config SLUB_DEBUG_ON
Boot with debugging on by default. SLUB boots by default with
the runtime debug capabilities switched off. Enabling this is
equivalent to specifying the "slub_debug" parameter on boot.
- There is no support for more fine grained debug control like
- possible with slub_debug=xxx. SLUB debugging may be switched
- off in a kernel built with CONFIG_SLUB_DEBUG_ON by specifying
- "slub_debug=-".
+ There is support for more fine grained debug control like
+ possible with slub_debug=xxx, details in Documentation/mm/slub.rst.
+ SLUB debugging may be switched off in a kernel built with
+ CONFIG_SLUB_DEBUG_ON by specifying "slub_debug=-".

config PAGE_OWNER
bool "Track page owner"
--
2.34.1



2023-02-23 01:04:23

by Hyeonggon Yoo

[permalink] [raw]
Subject: Re: [PATCH] mm/slub: fix help comment of SLUB_DEBUG[_ON]

On Thu, Feb 23, 2023 at 07:20:58AM +0800, Vernon Yang wrote:
> Since commit 081248de0a02 ("kset: move /sys/slab to /sys/kernel/slab"),
> the SYSFS path of slab was modified, so fix up the help comment of
> SLUB_DEBUG to use the correct one.
>
> And now the "slub_debug" parameter on boot that is support for more
> fine grained debug control, so fix up help comment of SLUB_DEBUG_ON
> for "no support" to "support".
>
> Signed-off-by: Vernon Yang <[email protected]>
> ---
> mm/Kconfig.debug | 12 ++++++------
> 1 file changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/mm/Kconfig.debug b/mm/Kconfig.debug
> index fca699ad1fb0..732043bf56c6 100644
> --- a/mm/Kconfig.debug
> +++ b/mm/Kconfig.debug
> @@ -61,8 +61,8 @@ config SLUB_DEBUG
> help
> SLUB has extensive debug support features. Disabling these can
> result in significant savings in code size. This also disables
> - SLUB sysfs support. /sys/slab will not exist and there will be
> - no support for cache validation etc.
> + SLUB sysfs support. /sys/kernel/slab will not exist and there
> + will be no support for cache validation etc.

After commit ab4d5ed5eeda ("slub: Enable sysfs support for !CONFIG_SLUB_DEBUG"),
"Disabling SLUB_DEBUG also disables SLUB sysfs support" is not true anymore.

> config SLUB_DEBUG_ON
> bool "SLUB debugging on by default"
> @@ -73,10 +73,10 @@ config SLUB_DEBUG_ON
> Boot with debugging on by default. SLUB boots by default with
> the runtime debug capabilities switched off. Enabling this is
> equivalent to specifying the "slub_debug" parameter on boot.
> - There is no support for more fine grained debug control like
> - possible with slub_debug=xxx. SLUB debugging may be switched
> - off in a kernel built with CONFIG_SLUB_DEBUG_ON by specifying
> - "slub_debug=-".
> + There is support for more fine grained debug control like
> + possible with slub_debug=xxx, details in Documentation/mm/slub.rst.
> + SLUB debugging may be switched off in a kernel built with
> + CONFIG_SLUB_DEBUG_ON by specifying "slub_debug=-".

I think this is a misunderstanding. SLUB_DEBUG_ON is equivalent to
passing boot parameter slub_debug=FUPZ, and what the help text says is that

"You can enable slub debugging by default using this config option but
there is no support for fine-grained control like what slub_debug
boot parameter provides."

IOW SLUB_DEBUG_ON cannot be used to have same effect as passing
something like slub_debug=F.

>
> config PAGE_OWNER
> bool "Track page owner"
> --
> 2.34.1
>
>

2023-03-13 16:26:31

by Vlastimil Babka

[permalink] [raw]
Subject: Re: [PATCH] mm/slub: fix help comment of SLUB_DEBUG[_ON]

On 2/23/23 02:03, Hyeonggon Yoo wrote:
> On Thu, Feb 23, 2023 at 07:20:58AM +0800, Vernon Yang wrote:
>> Since commit 081248de0a02 ("kset: move /sys/slab to /sys/kernel/slab"),
>> the SYSFS path of slab was modified, so fix up the help comment of
>> SLUB_DEBUG to use the correct one.
>>
>> And now the "slub_debug" parameter on boot that is support for more
>> fine grained debug control, so fix up help comment of SLUB_DEBUG_ON
>> for "no support" to "support".
>>
>> Signed-off-by: Vernon Yang <[email protected]>
>> ---
>> mm/Kconfig.debug | 12 ++++++------
>> 1 file changed, 6 insertions(+), 6 deletions(-)
>>
>> diff --git a/mm/Kconfig.debug b/mm/Kconfig.debug
>> index fca699ad1fb0..732043bf56c6 100644
>> --- a/mm/Kconfig.debug
>> +++ b/mm/Kconfig.debug
>> @@ -61,8 +61,8 @@ config SLUB_DEBUG
>> help
>> SLUB has extensive debug support features. Disabling these can
>> result in significant savings in code size. This also disables
>> - SLUB sysfs support. /sys/slab will not exist and there will be
>> - no support for cache validation etc.
>> + SLUB sysfs support. /sys/kernel/slab will not exist and there
>> + will be no support for cache validation etc.
>
> After commit ab4d5ed5eeda ("slub: Enable sysfs support for !CONFIG_SLUB_DEBUG"),
> "Disabling SLUB_DEBUG also disables SLUB sysfs support" is not true anymore.

Yeah we could say that /sys/kernel/slab will exist but will not provide e.g.
cache validation.

>> config SLUB_DEBUG_ON
>> bool "SLUB debugging on by default"
>> @@ -73,10 +73,10 @@ config SLUB_DEBUG_ON
>> Boot with debugging on by default. SLUB boots by default with
>> the runtime debug capabilities switched off. Enabling this is
>> equivalent to specifying the "slub_debug" parameter on boot.
>> - There is no support for more fine grained debug control like
>> - possible with slub_debug=xxx. SLUB debugging may be switched
>> - off in a kernel built with CONFIG_SLUB_DEBUG_ON by specifying
>> - "slub_debug=-".
>> + There is support for more fine grained debug control like
>> + possible with slub_debug=xxx, details in Documentation/mm/slub.rst.
>> + SLUB debugging may be switched off in a kernel built with
>> + CONFIG_SLUB_DEBUG_ON by specifying "slub_debug=-".
>
> I think this is a misunderstanding. SLUB_DEBUG_ON is equivalent to
> passing boot parameter slub_debug=FUPZ, and what the help text says is that
>
> "You can enable slub debugging by default using this config option but
> there is no support for fine-grained control like what slub_debug
> boot parameter provides."
>
> IOW SLUB_DEBUG_ON cannot be used to have same effect as passing
> something like slub_debug=F.

Agree with both comments. Vernon, will you send an updated patch?

>>
>> config PAGE_OWNER
>> bool "Track page owner"
>> --
>> 2.34.1
>>
>>


2023-03-14 06:33:45

by Vernon Yang

[permalink] [raw]
Subject: Re: [PATCH] mm/slub: fix help comment of SLUB_DEBUG[_ON]

On Mon, Mar 13, 2023 at 05:26:19PM +0100, Vlastimil Babka wrote:
> On 2/23/23 02:03, Hyeonggon Yoo wrote:
> > On Thu, Feb 23, 2023 at 07:20:58AM +0800, Vernon Yang wrote:
> >> Since commit 081248de0a02 ("kset: move /sys/slab to /sys/kernel/slab"),
> >> the SYSFS path of slab was modified, so fix up the help comment of
> >> SLUB_DEBUG to use the correct one.
> >>
> >> And now the "slub_debug" parameter on boot that is support for more
> >> fine grained debug control, so fix up help comment of SLUB_DEBUG_ON
> >> for "no support" to "support".
> >>
> >> Signed-off-by: Vernon Yang <[email protected]>
> >> ---
> >> mm/Kconfig.debug | 12 ++++++------
> >> 1 file changed, 6 insertions(+), 6 deletions(-)
> >>
> >> diff --git a/mm/Kconfig.debug b/mm/Kconfig.debug
> >> index fca699ad1fb0..732043bf56c6 100644
> >> --- a/mm/Kconfig.debug
> >> +++ b/mm/Kconfig.debug
> >> @@ -61,8 +61,8 @@ config SLUB_DEBUG
> >> help
> >> SLUB has extensive debug support features. Disabling these can
> >> result in significant savings in code size. This also disables
> >> - SLUB sysfs support. /sys/slab will not exist and there will be
> >> - no support for cache validation etc.
> >> + SLUB sysfs support. /sys/kernel/slab will not exist and there
> >> + will be no support for cache validation etc.
> >
> > After commit ab4d5ed5eeda ("slub: Enable sysfs support for !CONFIG_SLUB_DEBUG"),
> > "Disabling SLUB_DEBUG also disables SLUB sysfs support" is not true anymore.

Yes, You are right. Thanks.

>
> Yeah we could say that /sys/kernel/slab will exist but will not provide e.g.
> cache validation.

OK.

>
> >> config SLUB_DEBUG_ON
> >> bool "SLUB debugging on by default"
> >> @@ -73,10 +73,10 @@ config SLUB_DEBUG_ON
> >> Boot with debugging on by default. SLUB boots by default with
> >> the runtime debug capabilities switched off. Enabling this is
> >> equivalent to specifying the "slub_debug" parameter on boot.
> >> - There is no support for more fine grained debug control like
> >> - possible with slub_debug=xxx. SLUB debugging may be switched
> >> - off in a kernel built with CONFIG_SLUB_DEBUG_ON by specifying
> >> - "slub_debug=-".
> >> + There is support for more fine grained debug control like
> >> + possible with slub_debug=xxx, details in Documentation/mm/slub.rst.
> >> + SLUB debugging may be switched off in a kernel built with
> >> + CONFIG_SLUB_DEBUG_ON by specifying "slub_debug=-".
> >
> > I think this is a misunderstanding. SLUB_DEBUG_ON is equivalent to

Yeah, This is a misunderstanding. I remove this.

> > passing boot parameter slub_debug=FUPZ, and what the help text says is that
> >
> > "You can enable slub debugging by default using this config option but
> > there is no support for fine-grained control like what slub_debug
> > boot parameter provides."
> >
> > IOW SLUB_DEBUG_ON cannot be used to have same effect as passing
> > something like slub_debug=F.
>
> Agree with both comments. Vernon, will you send an updated patch?

Ok, I'll be sending a new patch shortly.

>
> >>
> >> config PAGE_OWNER
> >> bool "Track page owner"
> >> --
> >> 2.34.1
> >>
> >>
>