On Tue, Apr 21, 2020 at 01:00:41PM +0200, Marek wrote: > > > > Can you please showcase using this feature somewhere? Thanks! > > > > -- > > Tom > > Yes. First of all, sincere apology for such a massive delay in it. > I got snowed with the corporation work of mine. > > So here is my go at showcasing it. We are in SPL U-Boot running code from > within the static memory: > arch/arm/cpu/armv8/start.S:reset vector > -> arch/arm/cpu/armv8/start.S:main() > -> arch/arm/lib/crt0_64.S:board_init_f() > -> /board/<my_board>/common/spl.c:board_init_f() > > board_init_f() does mem_malloc_init(malloc_start_in_static, size). It needs > the malloc for SPI flash to load off some proprietary stuff. > Note the size of the static memory is limited, so is our malloc size. > > Then along it does the DDR memory initialization. Now we have much greater > memory > and can move our malloc allocator onto it. So again it does mem_malloc_init() > but this time with an address in the DDR memory and a much greater size. > And this is where this feature comes in hand. Just calling in > mem_malloc_init() > with the updated start addr and the size isn't enough. It also mandates > resetting the malloc, namely defaulting its bins, and some bookkeeping. > > I know there is an early malloc available I can use as the first one but that > requires managing the two mallocs. This patch proposes to use a single malloc > suite (dlmalloc) and use it freely around when and how it is needed.
OK, thanks. Can you please re-send and include the above re-phrased to make sense in a commit message, in the body of the commit as well so it's documented more in-tree when this would be helpful? Thanks again! > > Marek -- Tom
signature.asc
Description: PGP signature

