[PATCH 04/40] lib: Convert str_to_list() to use alist

Michal Simek michal.simek at amd.com
Thu Jul 25 15:16:37 CEST 2024



On 7/25/24 14:54, Sughosh Ganu wrote:
> On Thu, 25 Jul 2024 at 02:24, Tom Rini <trini at konsulko.com> wrote:
>>
>> On Wed, Jul 24, 2024 at 11:31:48AM +0530, Sughosh Ganu wrote:
>>
>>> From: Simon Glass <sjg at chromium.org>
>>>
>>> Use this new data structure in the utility function.
>>>
>>> Signed-off-by: Simon Glass <sjg at chromium.org>
>>> Signed-off-by: Sughosh Ganu <sughosh.ganu at linaro.org>
>>> ---
>>>   lib/strto.c | 35 +++++++++++++++++++----------------
>>>   1 file changed, 19 insertions(+), 16 deletions(-)
>>
>> This is rather big growth when we didn't already have realloc:
>> 05: lib: Convert str_to_list() to use alist
>>     aarch64: (for 1/1 boards) all +1765.0 rodata +37.0 text +1728.0
>>              xilinx_versal_mini_emmc0: all +1765 rodata +37 text +1728
>>                 u-boot: add: 7/0, grow: 1/0 bytes: 1728/0 (1728)
>>                   function                                   old     new   delta
>>                   realloc                                      -    1120   +1120
>>                   alist_ensure_ptr                             -     140    +140
>>                   alist_expand_to                              -     136    +136
>>                   alist_init                                   -     108    +108
>>                   alist_uninit_move_ptr                        -      76     +76
>>                   alist_add_ptr                                -      72     +72
>>                   alist_uninit                                 -      48     +48
>>                   str_to_list                                204     232     +28
>>
> 
> I am working on an implementation of lmb maps using lists. The list
> nodes are then allocated with calloc, which I believe is included in
> most of the board images. We can then compare the size impact with the
> two implementations (alist vs list). Thanks.

Inside LMB code it should be fine for us because as I wrote we are disabling LMB 
in these mini configurations.

Thanks,
Michal


More information about the U-Boot mailing list