| Subject | Re: [PATCH -v7 0/35] tip related: not use bootmem for x86 | From | Benjamin Herrenschmidt <> | Date | Mon, 15 Feb 2010 13:27:26 +1100 |
| |
On Wed, 2010-02-10 at 01:20 -0800, Yinghai Lu wrote: > > The reserve_early() method is list/range based and can handle vast > amounts of not very fragmented memory - perfect for basically all the > real bootmem purposes (which is to bootstrap the buddy). > > reserve_early() allocated memory could be freed into the buddy later > on > as well. The main reason why bootmem is 'destroyed' during > free-to-buddy > is because it has excessive internal bitmaps we want to free. With a > list/range based reserve_early() mechanism there's no such problem - > they can linger indefinitely and there's near zero allocation > management > overhead. "
Various archs use lib/lmb.c for representing physical memory and doing early allocations. Might be something to extend ?
Cheers, Ben.
|