Re: [PATCH v1 0/3] mm/memory_hotplug: Export generic_online_page()

From: Michal Hocko
Date: Mon Sep 23 2019 - 04:58:12 EST


On Fri 20-09-19 10:17:54, David Hildenbrand wrote:
> On 09.09.19 13:48, David Hildenbrand wrote:
> > Based on linux/next + "[PATCH 0/3] Remove __online_page_set_limits()"
> >
> > Let's replace the __online_page...() functions by generic_online_page().
> > Hyper-V only wants to delay the actual onlining of un-backed pages, so we
> > can simpy re-use the generic function.
> >
> > Only compile-tested.
> >
> > Cc: Souptick Joarder <jrdr.linux@xxxxxxxxx>
> >
> > David Hildenbrand (3):
> > mm/memory_hotplug: Export generic_online_page()
> > hv_balloon: Use generic_online_page()
> > mm/memory_hotplug: Remove __online_page_free() and
> > __online_page_increment_counters()
> >
> > drivers/hv/hv_balloon.c | 3 +--
> > include/linux/memory_hotplug.h | 4 +---
> > mm/memory_hotplug.c | 17 ++---------------
> > 3 files changed, 4 insertions(+), 20 deletions(-)
> >
>
> Ping, any comments on this one?

Unification makes a lot of sense to me. You can add
Acked-by: Michal Hocko <mhocko@xxxxxxxx>

I will most likely won't surprise if I asked for more here though ;)
I have to confess I really detest the whole concept of a hidden callback
with a very weird API. Is this something we can do about? I do realize
that adding a callback would require either cluttering the existing APIs
but maybe we can come up with something more clever. Or maybe existing
external users of online callback can do that as a separate step after
the online is completed - or is this impossible due to locking
guarantees?
--
Michal Hocko
SUSE Labs