Re: [PATCH] memory-hotplug: add automatic onlining policy for the newly added memory

From: David Vrabel
Date: Fri Dec 18 2015 - 11:53:30 EST


On 18/12/15 16:45, Vitaly Kuznetsov wrote:
> Currently, all newly added memory blocks remain in 'offline' state unless
> someone onlines them, some linux distributions carry special udev rules
> like:
>
> SUBSYSTEM=="memory", ACTION=="add", ATTR{state}=="offline", ATTR{state}="online"
>
> to make this happen automatically. This is not a great solution for virtual
> machines where memory hotplug is being used to address high memory pressure
> situations as such onlining is slow and a userspace process doing this
> (udev) has a chance of being killed by the OOM killer as it will probably
> require to allocate some memory.
>
> Introduce default policy for the newly added memory blocks in
> /sys/devices/system/memory/hotplug_autoonline file with two possible
> values: "offline" which preserves the current behavior and "online" which
> causes all newly added memory blocks to go online as soon as they're added.
> The default is "online" when MEMORY_HOTPLUG_AUTOONLINE kernel config option
> is selected.

FWIW, I'd prefer it if the caller of add_memory_resource() could specify
that it wants the new memory automatically onlined.

I'm not sure just having one knob is appropriate -- there are different
sorts of memory that can be added. e,g., in the Xen balloon driver we
use the memory add infrastructure to add empty pages (pages with no
machine pages backing them) for mapping things into, as well as adding
regular pages.

David
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/