Re: Trying to make use of hotplug memory for xen balloon driver

From: Dave Hansen
Date: Wed Mar 26 2008 - 20:27:00 EST



On Wed, 2008-03-26 at 16:11 -0700, Jeremy Fitzhardinge wrote:
> Bad page state in process 'events/0'
> page:c16fa0cc flags:0x00000000 mapping:00000000 mapcount:1 count:0
> Trying to fix it up, but a reboot is needed

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

--
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/