Re: [PATCH v3] arm64: add ARM64-specific support for flatmem

From: Arnd Bergmann
Date: Tue Jul 10 2018 - 09:25:22 EST


On Tue, Jul 10, 2018 at 3:06 PM, Will Deacon <will.deacon@xxxxxxx> wrote:
> Hi Arnd,
>
> On Tue, Jul 10, 2018 at 02:55:41PM +0200, Arnd Bergmann wrote:
>> On Fri, Jul 6, 2018 at 7:47 PM, Nikunj Kela <nkela@xxxxxxxxx> wrote:
>> > Flatmem is useful in reducing kernel memory usage.
>> > One usecase is in kdump kernel. We are able to save
>> > ~14M by moving to flatmem scheme.
>> >
>> > Cc: xe-kernel@xxxxxxxxxxxxxxxxxx
>> > Cc: Nikunj Kela <nkela@xxxxxxxxx>
>> > Signed-off-by: Nikunj Kela <nkela@xxxxxxxxx>
>> > ---
>> > arch/arm64/Kconfig | 3 +++
>> > 1 file changed, 3 insertions(+)
>> >
>> > diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
>> > index 42c090c..f5b4c49 100644
>> > --- a/arch/arm64/Kconfig
>> > +++ b/arch/arm64/Kconfig
>> > @@ -775,6 +775,9 @@ config ARCH_SPARSEMEM_DEFAULT
>> > config ARCH_SELECT_MEMORY_MODEL
>> > def_bool ARCH_SPARSEMEM_ENABLE
>> >
>> > +config ARCH_FLATMEM_ENABLE
>> > + def_bool y
>> > +
>> > config HAVE_ARCH_PFN_VALID
>> > def_bool ARCH_HAS_HOLES_MEMORYMODEL || !SPARSEMEM
>> >
>>
>> I'm getting hundreds of errors in randconfig builds with this:
>
> Damn, I was worried something like this might happen. Sorry!
>
> Does randconfig also fuzz CONFIG_EXPERT? We only added ARCH_FLATMEM_ENABLE
> so that people can hand-configure crashkernels to make them small; there will
> be plenty of situations where it's just going to cause more problems than it
> solves, so I'd be happy hiding it behind EXPERT if it helps.

Yes, randconfig also tests EXPERT and COMPILE_TEST configurations, though I
don't test the !COMPILE_TEST ones myself, so you can also hide options from
me by making them 'depends on !COMPILE_TEST'.

> Otherwise we can probably through a 'def_bool !NUMA' at it.

Yes, I was going to send a patch with that next after testing it some more.
So far it's holding up. This is also what some other architectures have, so
it's probably safe.

Arnd