Re: [PATCH V3 1/2] mm: compaction: move compact_memory sysctl to its own file

From: Vlastimil Babka
Date: Thu Mar 09 2023 - 04:48:15 EST


On 3/9/23 04:44, ye.xingchen@xxxxxxxxxx wrote:
> From: Minghao Chi <chi.minghao@xxxxxxxxxx>
>
> The compact_memory is part of compaction, move it to its own file.
>
> Link: https://lore.kernel.org/all/ZAJwoXJCzfk1WIBx@xxxxxxxxxxxxxxxxxxxxxx/
> Signed-off-by: Minghao Chi <chi.minghao@xxxxxxxxxx>
> Signed-off-by: Ye Xingchen <ye.xingchen@xxxxxxxxxx>
> ---
> kernel/sysctl.c | 7 -------
> mm/compaction.c | 15 +++++++++++++++
> 2 files changed, 15 insertions(+), 7 deletions(-)
>
> diff --git a/kernel/sysctl.c b/kernel/sysctl.c
> index c14552a662ae..f574f9985df4 100644
> --- a/kernel/sysctl.c
> +++ b/kernel/sysctl.c
> @@ -2190,13 +2190,6 @@ static struct ctl_table vm_table[] = {
> .extra2 = SYSCTL_FOUR,
> },
> #ifdef CONFIG_COMPACTION
> - {
> - .procname = "compact_memory",
> - .data = NULL,
> - .maxlen = sizeof(int),
> - .mode = 0200,
> - .proc_handler = sysctl_compaction_handler,
> - },
> {
> .procname = "compaction_proactiveness",
> .data = &sysctl_compaction_proactiveness,

There's also this one, and two more, please move all of them at once?

> diff --git a/mm/compaction.c b/mm/compaction.c
> index 5a9501e0ae01..acbda28c11f4 100644
> --- a/mm/compaction.c
> +++ b/mm/compaction.c
> @@ -2763,6 +2763,18 @@ int compaction_proactiveness_sysctl_handler(struct ctl_table *table, int write,
> return 0;
> }
>
> +#ifdef CONFIG_SYSCTL
> +static struct ctl_table vm_compact_memory[] = {
> + {
> + .procname = "compact_memory",
> + .data = NULL,
> + .maxlen = sizeof(int),
> + .mode = 0200,
> + .proc_handler = sysctl_compaction_handler,
> + },
> + { }
> +};
> +#endif
> /*
> * This is the entry point for compacting all nodes via
> * /proc/sys/vm/compact_memory
> @@ -3078,6 +3090,9 @@ static int __init kcompactd_init(void)
>
> for_each_node_state(nid, N_MEMORY)
> kcompactd_run(nid);
> +#ifdef CONFIG_SYSCTL
> + register_sysctl_init("vm", vm_compact_memory);
> +#endif
> return 0;
> }
> subsys_initcall(kcompactd_init)