From: Ran Xiaokai Boot parameters prefixed with "sysctl." are processed separately during the final stage of system initialization via kernel_init()-> do_sysctl_args(). Since mem_profiling support should be parsed in early boot stage, it is unsuitable for centralized handling in do_sysctl_args(). Also, when CONFIG_MEM_ALLOC_PROFILING_DEBUG is enabled, the sysctl.vm.mem_profiling entry is not writable and will cause a warning. To prevent duplicate processing of sysctl.vm.mem_profiling, rename the boot parameter to "mem_profiling". Signed-off-by: Ran Xiaokai --- Documentation/mm/allocation-profiling.rst | 2 +- lib/alloc_tag.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Documentation/mm/allocation-profiling.rst b/Documentation/mm/allocation-profiling.rst index 316311240e6a..fe341d6da7b9 100644 --- a/Documentation/mm/allocation-profiling.rst +++ b/Documentation/mm/allocation-profiling.rst @@ -18,7 +18,7 @@ kconfig options: missing annotation Boot parameter: - sysctl.vm.mem_profiling={0|1|never}[,compressed] + mem_profiling={0|1|never}[,compressed] When set to "never", memory allocation profiling overhead is minimized and it cannot be enabled at runtime (sysctl becomes read-only). diff --git a/lib/alloc_tag.c b/lib/alloc_tag.c index 846a5b5b44a4..81b248196629 100644 --- a/lib/alloc_tag.c +++ b/lib/alloc_tag.c @@ -747,7 +747,7 @@ static int __init setup_early_mem_profiling(char *str) return 0; } -early_param("sysctl.vm.mem_profiling", setup_early_mem_profiling); +early_param("mem_profiling", setup_early_mem_profiling); static __init bool need_page_alloc_tagging(void) { -- 2.25.1