[PATCH 2/5] board: st: common: fix dfu alt buffer clearing

Patrice CHOTARD patrice.chotard at foss.st.com
Mon May 5 15:28:56 CEST 2025



On 4/22/25 09:32, Patrice CHOTARD wrote:
> 
> 
> On 4/7/25 19:05, Vincent Stehlé wrote:
>> The set_dfu_alt_info() function calls the ALLOC_CACHE_ALIGN_BUFFER()
>> macro to declare a `buf' variable pointer into an array allocated on the
>> stack. It then calls the memset() function to clear the useable portion
>> of the array using the idiomatic expression `sizeof(buf)'.
>>
>> While this would indeed work fine for an array, in the present case we
>> end up clearing only the size of a pointer.
>> Fix this by specifying the explicit size `DFU_ALT_BUF_LEN' instead.
>>
>> Fixes: ec2933e543df ("board: stm32mp1: move set_dfu_alt_info in st common directory")
>> Signed-off-by: Vincent Stehlé <vincent.stehle at arm.com>
>> Cc: Patrick Delaunay <patrick.delaunay at foss.st.com>
>> Cc: Patrice Chotard <patrice.chotard at foss.st.com>
>> Cc: Tom Rini <trini at konsulko.com>
>> Cc: Marek Vasut <marex at denx.de>
>> ---
>>  board/st/common/stm32mp_dfu.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/board/st/common/stm32mp_dfu.c b/board/st/common/stm32mp_dfu.c
>> index 1db8e45480e..8c1f80b678a 100644
>> --- a/board/st/common/stm32mp_dfu.c
>> +++ b/board/st/common/stm32mp_dfu.c
>> @@ -105,7 +105,7 @@ void set_dfu_alt_info(char *interface, char *devstr)
>>  	if (env_get("dfu_alt_info"))
>>  		return;
>>  
>> -	memset(buf, 0, sizeof(buf));
>> +	memset(buf, 0, DFU_ALT_BUF_LEN);
>>  
>>  	snprintf(buf, DFU_ALT_BUF_LEN,
>>  		 "ram 0=%s", CONFIG_DFU_ALT_RAM0);
> 
> Hi Vincent,
> 
> Reviewed-by: Patrice Chotard <patrice.chotard at foss.st.com>
> 
> Thanks
Applied to u-boot-stm32/master

Thanks
Patrice


More information about the U-Boot mailing list