Re: [PATCH 1/3] mm: vmalloc: Let user to control huge vmalloc default behavior
From: Matthew Wilcox
Date: Sun Dec 26 2021 - 22:19:38 EST
On Mon, Dec 27, 2021 at 09:44:24AM +0800, Kefeng Wang wrote:
>
> On 2021/12/27 1:36, Christophe Leroy wrote:
> >
> > Le 26/12/2021 à 09:39, Kefeng Wang a écrit :
> > > Add HUGE_VMALLOC_DEFAULT_ENABLED to let user to choose whether or
> > > not enable huge vmalloc mappings by default, and this could make
> > > more architectures to enable huge vmalloc mappings feature but
> > > don't want to enable it by default.
> > >
> > > Add hugevmalloc=on/off parameter to enable or disable this feature
> > > at boot time, nohugevmalloc is still supported and equivalent to
> > > hugevmalloc=off.
> >
> > Is there a real added value to have the user be able to select that ?
> >
> > If the architecture supports it, is there any good reason to not use it ?
>
> There are some disadvantages[1], one of the main concerns is the possible
>
> memory waste, we have backported this feature to our kernel 5.10, but our
>
> downstream in our some scenario(especially in embedded), they don't want
>
> it enabled by default, and others want it, this is why patch1 comes.
>
> >
> > Why not just do like PPC and enable it by default ? Why should it be
> > enabled by default on PPC but disabled by default on ARM64 and X86 ?
>
> The PPC is default enabled, we don't changes this behavior.
>
> Maybe upstream is not care about this, as I said in cover-letter, if
> arm64/x86
>
> don't want patch1, we could only just select config to enable it.
>
> Let's wait for more feedback.
We should not have different defaults by architecture. Either we change
the default for PPC, or x86 & arm should have the same default as PPC.