Re: [PATCH 3/4] xen: move XEN_BALLOON_MEMORY_HOTPLUG to generic config
From: Lukas Bulwahn
Date: Wed Aug 17 2022 - 00:26:43 EST
On Wed, Aug 10, 2022 at 1:32 PM Oleksandr Tyshchenko
<Oleksandr_Tyshchenko@xxxxxxxx> wrote:
>
>
> On 10.08.22 08:07, Lukas Bulwahn wrote:
>
> Hello Lukas, all
>
> > While reviewing arch/x86/configs/xen.config, I noticed the following
> > note in this file:
> >
> > '# depends on MEMORY_HOTPLUG, arm64 doesn't enable this yet,
> > '# move to generic config if it ever does.
> > CONFIG_XEN_BALLOON_MEMORY_HOTPLUG=y
> >
> > Commit 6c6685055a28 ("kconfig: add xenconfig defconfig helper") in June
> > 2015 adds this note. Fortunately, commit 4ab215061554 ("arm64: Add memory
> > hotplug support") from December 2018 adds the memory hotplug in arm64, so
> > the precondition of this note above is now met.
> >
> > Move setting the config XEN_BALLOON_MEMORY_HOTPLUG into the generic
> > xen.config now.
>
>
> I might have missed something but I have never heard of anyone using
> XEN_BALLOON_MEMORY_HOTPLUG on Arm.
>
> Looking into the code, I am afraid, CONFIG_XEN_BALLOON_MEMORY_HOTPLUG
> won't be functional on Arm without reworking resource allocation logic
> in drivers/xen/ballon.c at least, since system "iomem_resource" cannot
> be used on Arm to allocate unused memory region(s), please see
> additional_memory_resource(). I might be wrong, but it feels to me that
> here we would need a similar logic like in
> drivers/xen/unpopulated-alloc.c which is functional on Arm since it uses
> specific Xen resource (on x86 it is just an iomem_resource, but on Arm
> it contains provided by the hypervisor extended regions).
>
> I am not aware of anyone working on it, so I wouldn't enable that
> support on Arm by default until the code is updated.
>
Thanks for the in-depth investigation and explanation. For now, let us
drop this patch here and keep the configs as they are.
Lukas