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:
The flags being all null looks highly suspicious to me.
Once you've done an add_memory(), the new sections should show up
in /sys. Do you see them in there?
Once they show up, you can online them with:
echo online > /sys/devices/system/memory/memoryXXX/state
That's what actually goes and mucks with the 'struct zone's and the
pgdats to expand them. It will also call online_page() on the whole
range. I think you're trying to do this manually, and missing part of
it.
There's some documentation here:
http://kerneltrap.org/node/14009
But, think of it this way: "add" is what the hardware does. "online" is
what Linux does after the memory has been added so that it can be used.
-- Dave
--