Messages in this thread | | | Date | Thu, 03 Apr 2008 18:32:09 -0700 | From | Jeremy Fitzhardinge <> | Subject | Re: [PATCH 1 of 6] hotplug-memory: refactor online_pages to separate zone growth from page onlining |
| |
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
| |