On Thu, Apr 01, 2010 at 12:56:58AM +0200, Ingo Molnar wrote:
That does not make much sense as bootmem is not only used on the architecture
side but also in generic code. So you either have to emulate the API on x86
or get lmb in a state to replace bootmem on _all_ architectures.
I think this was an implementation thing rather than a problem with the model
per se.
As written above, you can hardly get away without emulating the bootmem API
during transition.
I suppose it would be safest to replace early_res with lmb first to get
in sync with the other archs using it.
Step two would be to extend LMB and implement a bootmem emulation API on
top of it so that architectures can switch over to non-bootmem mode one
by one. Then you can drop the real bootmem code and switch generic code
to use LMB natively, also site by site. And finally, drop the emulation API.
If other architectures object to removing bootmem, there really is no point
for x86 to even try it.
For step one to work out, it's probably easiest to fully revert to the
.33 state than having to replace early_res while in its current state?
--