Oh, once we've let Linux establish ptes to it, we've required that the
hypervisor have it around? How does that work with the balloon driver?
Do we destroy the ptes when giving balloon memory back to the
hypervisor?
If we're talking about i386, then we're set. We don't map the hot-added
memory at all because we only add highmem on i386. The only time we map
these pages is *after* we actually allocate them when they get mapped
into userspace or used as vmalloc() or they're kmap()'d.
I think we're getting off track here; this is a lot of extra complexity to justify allowing usermode to use /sys to online a chunk of hotplugged memory.
Either that, or we're going to develop the entire Xen/kvm memory hotplug
architecture around the soon-to-be-legacy i386 limitations. :)