Linux: Memory Hotplug Development Tree

Submitted by Jeremy
on August 28, 2004 - 6:52am

Dave Hansen announced a new kernel tree focused on the development of support for hot-pluggable memory in the Linux kernel. The latest patchset is 2.6.9-rc1-mm1-mhp1, about which Dave explains:

"The main aim of this patch set (other than having the longest possible version name) is to give the memory hotplug developers a common base to work from. It is hopefully split up in such a way that it is easy to replace an implementation in the middle of the stack without disturbing too much other stuff."

Future discussion of and this tree will be found on the lhms-devel mailing list, part of the lhms project. The latest patches are against Andrew Morton [interview]'s -mm tree [story].


From: Dave Hansen [email blocked]
To: lhms [email blocked]
Subject: ANNOUNCE: 2.6.9-rc1-mm1-mhp1
Date: 	Thu, 26 Aug 2004 12:10:30 -0700

Oh no, not another kernel tree!

I promise I won't make a regular habit of posting this to LKML, but I
figured I'd do it at least once just in case anybody here cares.  We
have most of our discussions on [email blocked]

The main aim of this patch set (other than having the longest possible
version name) is to give the memory hotplug developers a common base to
work from.  It is hopefully split up in such a way that it is easy to
replace an implementation in the middle of the stack without disturbing
too much other stuff.

All of the A?-*.patch files are things that I hope to get merged in
the near future.  Some have been sent out for review already, some
haven't.  Review of or comments on anything in the set would be greatly
appreciated.  Please ignore the debugging patch as much as possible :)

The patches are here for now:
	http://sprucegoose.sr71.net/patches/
But, that's not permanent and may change at some time in the future. 

They're alphabetically applied, but there's also a series file.  

---------------------------

Changes since 2.6.8.1-mm3-mhp1:

merged into -mm:
        A0-virts_are_voidstar.patch
        A1-noalign-virt_to_page-args.patch
        A2-fetch_pgd_into_ul.patch
        A3-early_printk-cast-VGABASE.patch
        A4-include-page.h-virt_to_page.patch
        A5-sysenter-types.patch

New:
        C7-nonlinear-consts.patch
        K2-swap_cleanup
        K3-swap_mem_hotplug
        
K{2,3} are some of the first hooks in to the swap code to support memory
removal.  The first patch just moves some code around, and the second
one creates an special case of the inactive_list for pages under
removal.  These still need a bit of cleaning up, but they appear to do
some good.  Time will tell whether the swap code will be sufficient, or
we need a more drastic approach.  

On my 4G machine, I can boot with mem=2G, and add memory back after
booting.  For right now, this only works in 128MB sections, but to add
the memory from 2G up to 2G+128MB, you just do this:

	echo 0x80000000 > /sys/devices/system/memory/probe

You'll get hotplug events via /sbin/hotplug, and then you can

	echo online > /sys/devices/system/memory/memoryXX/status

to actually make the memory available.  You'll know what XX is because
of the hotplug events.  You can then do this:

	echo offline > /sys/devices/system/memory/memoryXX/status

But, that doesn't really do very much right now other than mark all the
pages in that particular memory section as slated for removal and trying
to allocate all of them. 

-- Dave


Related Links:

That [email blocked] stuff is really stupid

Anonymous
on
August 28, 2004 - 6:58am

That [email blocked] stuff is really stupid, as it cuts vital information.

Re: That [email blocked] stuff is really stupid

Cabal
on
August 28, 2004 - 7:25am

Said by someone that posts as "Anonymous." Bwaahaahaa. If someone wants to contact someone from the email, it's trivial to find out how.

No, it isn't

Anonymous
on
August 28, 2004 - 12:29pm

It prevents spam-bots from collecting email addresses; you would not like to see your email published anywhere in the web (unless you are trying to test your new spam filter, that is).

Try clicking on "Archive of a

Anonymous
on
August 28, 2004 - 4:09pm

Try clicking on "Archive of above thread".

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.