Re: [PATCH v1] memory-hotplug.rst: complete admin-guide overhaul

From: Mike Rapoport
Date: Tue Jun 08 2021 - 10:18:33 EST


On Tue, Jun 08, 2021 at 03:04:19PM +0200, David Hildenbrand wrote:

...

> > > +--------------
> > > -You can offline a memory block by using the same sysfs interface that was used
> > > -in memory onlining::
> > > +We usually expect that a large portion of available system RAM will actually
> > > +be consumed by user space, either directly or indirectly via the page cache. In
> > > +the normal case, ZONE_MOVABLE can be used when allocating such pages just fine.
> > > - % echo offline > /sys/devices/system/memory/memoryXXX/state
> > > +With that in mind, it makes sense that we can have a big portion of system RAM
> > > +managed by ZONE_MOVABLE. However, there are some things to consider when
> > > +using ZONE_MOVABLE, especially when fine-tuning zone ratios:
> > > -If offline succeeds, the state of the memory block is changed to be "offline".
> > > -If it fails, some error core (like -EBUSY) will be returned by the kernel.
> > > -Even if a memory block does not belong to ZONE_MOVABLE, you can try to offline
> > > -it. If it doesn't contain 'unmovable' memory, you'll get success.
> > > +- Having a lot of offline memory blocks. Even offline memory blocks consume
> > > + memory for metadata and page tables in the direct map; having a lot of
> > > + offline memory blocks is not a typical case, though.
> > > +
> > > +- Memory ballooning. Some memory ballooning implementations, such as
> > > + the Hyper-V balloon, the XEN balloon, the vbox balloon and the VMWare
> >
> > So, everyone except virtio-mem? ;-)
>
> Well, virtio-mem does not classify as memory balloon in that sense, as it
> only operates on own device memory ;)
>
> virtio-balloon and pseries CMM support balloon compaction.
>
> > I'd drop the names because if some of those will implement balloon
> > compaction they surely will forget to update the docs.

> I can do the opposite and mention the ones that already do. Some most
> probably will never support it.
>
> "Memory ballooning without balloon compaction is incompatible with
> ZONE_MOVABLE. Only some implementations, such as virtio-balloon and pseries
> CMM, fully support balloon compaction."

Sounds good.

--
Sincerely yours,
Mike.