Re: [PATCH 1 of 6] hotplug-memory: refactor online_pages to	separatezone growth from page onlining
From: Jeremy Fitzhardinge
Date:  Thu Apr 03 2008 - 21:33:31 EST
Dave Hansen wrote:
On Thu, 2008-04-03 at 17:05 -0700, Jeremy Fitzhardinge wrote:
  
+int prepare_online_pages(unsigned long pfn, unsigned long nr_pages)
+{
+       int ret = notify_going_online(pfn, nr_pages);
+       if (ret)
+               return ret;
+
+       grow_zone_span(pfn, pfn+nr_pages);
        return 0;
+}
    
OK, after seeing this used in the Xen driver, I'm even less a fan of the
name.  Mostly because it doesn't actually prepare *pages* to be onlined.
It prepares the zones/pgdats and notifies that pages might soon be
online.  Can you think of any better names?
grow_and_notify...??
  
Does it even need to be a separately visible function?  Could it just be 
part of add_memory()?  Is there any reason delay doing it until 
online_pages()?
That way online_pages() can return to being the one-stop function to 
online all the pages, making mark_pages_online() redundant.
It's also a bit funky because you're calling the online notifiers, but
you're not actually onlining the pages, yet.  Does that have any
repercussions?
No.  It will always call the GOING_ONLINE notifier, but it will only 
call the ONLINE notifier if it actually bulk-onlines all the pages.  In 
my page-by-page case, it will never end up calling the ONLINE notifier.  
I could call it repeatedly for each page, but I'm not sure how useful 
that is (the lack of any users of the ONLINE notifier makes it hard to 
judge).
   J
--
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/