yea, looks nice :)Just to be clear, there are at least two distinct requirements for hotplug.
One only wants to remove a quantity of memory (location unimportant). The
other wants to remove a specific section of memory (location specific). I
think the first is easier to address.
The only difficulty to remove a quantity of memory is how to find
where is easy to be removed. If this is fixed, I think it is
easier to address.
We have been using Mel's fragmentation patches. One of the data structures
created by these patches is a 'usemap' thats tracks how 'blocks' of memory
are used. I exposed the usemaps via sysfs along with other hotplug memory
section attributes. So, you can then have a user space program scan the
usemaps looking for sections that can be easily offlined.