On Sun, 2010-05-09 at 21:31 -0700, Yinghai wrote:Will move that back to arch/x86/mm/lmb.cThis is clumsy. Doesn't work with NUMA either. Also,
it works NUMA. for x86 we managed to call that one time from
2.6.34-rc1. (still called early_res_to_bootmem().
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=1842f90cc98625d4d9bf8f8b927f17705ceb4e9c
reserve_bootmem_generic() only exists on x86 afaik.
previous patch add weak version
[PATCH 06/22] bootmem, x86: Add weak version of
reserve_bootmem_generic
It might work on x86, it won't work on sparc as far as I understand. In
any case, I don't think that should be in lmb.c, that's boilerplate crap
that eventually will go away.
One thing you don't seem to get is that several archs already have some
code to move from lmb to bootmem.
The right approach when making something "generic" like that is not to
make up another one deep into x86 gunkyness and make -that- generic
ignoring the existing implementations.
Instead, make sure that the existing implementations are in sync, and
then move -that- to a generic place, eventually adding (in a separate
patch) the changes needed by x86 if any.
--