]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
mm/mm_init: replace simple_strtoul with kstrtobool in set_hashdist
authorThorsten Blum <thorsten.blum@linux.dev>
Wed, 17 Dec 2025 11:02:13 +0000 (12:02 +0100)
committerAndrew Morton <akpm@linux-foundation.org>
Wed, 21 Jan 2026 03:24:47 +0000 (19:24 -0800)
commit84355caa271a0eab2d1b55ff73aa8aa3e4627661
tree95d4e3fb92b0aeafb3e6baece0dfed133b2aef34
parenta98ec863fdedf4940447f32ceda7d937bebd06a2
mm/mm_init: replace simple_strtoul with kstrtobool in set_hashdist

Use bool for 'hashdist' and replace simple_strtoul() with kstrtobool() for
parsing the 'hashdist=' boot parameter.  Unlike simple_strtoul(), which
returns an unsigned long, kstrtobool() converts the string directly to
bool and avoids implicit casting.

Check the return value of kstrtobool() and reject invalid values.  This
adds error handling while preserving behavior for existing values, and
removes use of the deprecated simple_strtoul() helper.  The current code
silently sets 'hashdist = 0' if parsing fails, instead of leaving the
default value (HASHDIST_DEFAULT) unchanged.

Additionally, kstrtobool() accepts common boolean strings such as "on" and
"off".

Link: https://lkml.kernel.org/r/20251217110214.50807-1-thorsten.blum@linux.dev
Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev>
Reviewed-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Reviewed-by: Mike Rapoport (Microsoft) <rppt@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
include/linux/memblock.h
mm/mm_init.c