Cc: KAMEZAWA Hiroyuki <kamezawa.hiroyu@...>, Yasunori Goto <y-goto@...>, Christoph Lameter <clameter@...>, Linux Kernel Mailing List <linux-kernel@...>, Anthony Liguori <anthony@...>, Chris Wright <chrisw@...>
On Wed, 2008-03-26 at 16:11 -0700, Jeremy Fitzhardinge wrote:
Yeah, this is your problem. You've only allocated the iomem *resource*
for the memory area, which means that you've basically claimed the
physical addresses.
But, you don't have any 'struct page's there.
We really screwed up the memory hotplug code and ended up with some
incredibly arcane function names. You might want to look at
add_memory(). It is hidden away in mm/memory_hotplug.c :)
You might also note that most of the ppc64 memory hotplug is driven by
userspace. The hypervisor actually contacts a daemon on the guest to
tell it where its new memory is. That daemon does the addition
through /sys/devices/system/memory/probe.
-- Dave
--