Messages in this thread | | | Date | Thu, 27 Mar 2008 21:20:18 -0700 | From | Jeremy Fitzhardinge <> | Subject | Re: [PATCH 2 of 4] hotplug-memory: adding non-section-aligned memory is bad |
| |
KAMEZAWA Hiroyuki wrote: > On Thu, 27 Mar 2008 19:51:26 -0700 > Jeremy Fitzhardinge <jeremy@goop.org> wrote: > > >>> (I wrote online_page() in above, but online_pages() is maybe better. >>> It does all what you want.) >>> >>> >> No, for my use-case the pages must be onlined one by one as they get >> some physical memory assigned to them. At the time I do add_memory(), >> I'm just allocating page structures, but there's no memory backing that >> range. >> >> > yes, I see. > > >> That's why I need to disable the sysfs onlining interface, because it >> bulk onlines the pages before there's anything behind them. >> >> > > My point is. online_pages() does following things. > > - call notifier > - update information , total_pages etc... > - re-configure zonelist if necessary... > > But online_page() not. Hmm... > > How about capturing online_page() by balloon ? >
You're saying that using online_page() on each page on its own is not sufficient?
> ex.) > == > call add_memory() to create mem_map > call online_pages() against the whole section. <=== call this without sysfs. > online_pages() do misc. jobs > call online_page() one by one (arch dependent) called by walk_memory_resource. > online_page() will finally call free_page(page). > <=========== Xen capture here. > Don't free onlined page and swallow them into baloon driver. > == >
I'm not sure what you mean by "capture" here. Do you mean a hook? I'd rather not have to put some Xen-specific hook in here.
What would happen if I did online_pages(pfn, 1) on each page as I populate it?
J
| |