[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <83344b3d-1de1-f3c2-913c-a8c54ce7a99f@suse.cz>
Date: Wed, 8 Mar 2023 11:21:36 +0100
From: Vlastimil Babka <vbabka@...e.cz>
To: ye.xingchen@....com.cn, mcgrof@...nel.org
Cc: keescook@...omium.org, yzaikin@...gle.com,
akpm@...ux-foundation.org, linmiaohe@...wei.com,
chi.minghao@....com.cn, linux-kernel@...r.kernel.org,
linux-fsdevel@...r.kernel.org, linux-mm@...ck.org
Subject: Re: [PATCH V2 1/2] sysctl: Limit the value of interface
compact_memory
On 3/6/23 07:07, ye.xingchen@....com.cn wrote:
> From: Minghao Chi <chi.minghao@....com.cn>
>
> In Documentation/admin-guide/sysctl/vm.rst:109 say: when 1 is written
> to the file, all zones are compacted such that free memory is available
> in contiguous blocks where possible.
> So limit the value of interface compact_memory to 1.
>
> Link: https://lore.kernel.org/all/ZAJwoXJCzfk1WIBx@bombadil.infradead.org/
I don't think the split to two patches you did, achieves Luis' request.
> Signed-off-by: Minghao Chi <chi.minghao@....com.cn>
> Signed-off-by: Ye Xingchen <ye.xingchen@....com.cn>
>
> ---
> include/linux/compaction.h | 1 +
> kernel/sysctl.c | 4 +++-
> 2 files changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/include/linux/compaction.h b/include/linux/compaction.h
> index 52a9ff65faee..caa24e33eeb1 100644
> --- a/include/linux/compaction.h
> +++ b/include/linux/compaction.h
> @@ -81,6 +81,7 @@ static inline unsigned long compact_gap(unsigned int order)
> }
>
> #ifdef CONFIG_COMPACTION
> +extern int sysctl_compact_memory;
> extern unsigned int sysctl_compaction_proactiveness;
> extern int sysctl_compaction_handler(struct ctl_table *table, int write,
> void *buffer, size_t *length, loff_t *ppos);
> diff --git a/kernel/sysctl.c b/kernel/sysctl.c
> index c14552a662ae..67f70952f71a 100644
> --- a/kernel/sysctl.c
> +++ b/kernel/sysctl.c
> @@ -2192,10 +2192,12 @@ static struct ctl_table vm_table[] = {
> #ifdef CONFIG_COMPACTION
> {
> .procname = "compact_memory",
> - .data = NULL,
> + .data = &sysctl_compact_memory,
I doubt this compiles/links without patch 2, as there's no definition
until patch 2.
> .maxlen = sizeof(int),
> .mode = 0200,
> .proc_handler = sysctl_compaction_handler,
> + .extra1 = SYSCTL_ONE,
> + .extra2 = SYSCTL_ONE,
> },
> {
> .procname = "compaction_proactiveness",
IIUC his request was to move the compaction entries out of sysctl.c?
Powered by blists - more mailing lists