Re: [External] [PATCH v2 1/4] slub: Restore slub_debug=- behavior

From: Vlastimil Babka
Date: Wed May 26 2021 - 06:46:52 EST


On 5/26/21 6:04 AM, Muchun Song wrote:
> On Wed, May 26, 2021 at 10:56 AM Stephen Boyd <swboyd@xxxxxxxxxxxx> wrote:
>>
>> Passing slub_debug=- on the kernel commandline is supposed to disable
>> slub debugging. This is especially useful with CONFIG_SLUB_DEBUG_ON
>> where the default is to have slub debugging enabled in the build. Due to
>> some code reorganization this behavior was dropped, but the code to make
>> it work mostly stuck around. Restore the previous behavior by disabling
>> the static key when we parse the commandline and see that we're trying
>> to disable slub debugging.
>>
>> Cc: Vlastimil Babka <vbabka@xxxxxxx>
>> Fixes: e17f1dfba37b ("mm, slub: extend slub_debug syntax for multiple blocks")

Acked-by: Vlastimil Babka <vbabka@xxxxxxx>

>
> Is it caused by the commit ca0cab65ea2b ("mm, slub: introduce static
> key for slub_debug()")?

Yep, looks like a better Fixes: candidate.

>> Signed-off-by: Stephen Boyd <swboyd@xxxxxxxxxxxx>
>> ---
>> mm/slub.c | 2 ++
>> 1 file changed, 2 insertions(+)
>>
>> diff --git a/mm/slub.c b/mm/slub.c
>> index 438fa8d4c970..2f53e8a9c28e 100644
>> --- a/mm/slub.c
>> +++ b/mm/slub.c
>> @@ -1396,6 +1396,8 @@ static int __init setup_slub_debug(char *str)
>> out:
>> if (slub_debug != 0 || slub_debug_string)
>> static_branch_enable(&slub_debug_enabled);
>> + else
>> + static_branch_disable(&slub_debug_enabled);
>> if ((static_branch_unlikely(&init_on_alloc) ||
>> static_branch_unlikely(&init_on_free)) &&
>> (slub_debug & SLAB_POISON))
>> --
>> https://chromeos.dev
>>
>