Re: [PATCH] firmware: arm_ffa: Fix warning caused by export_uuid()

From: Sudeep Holla
Date: Mon Oct 14 2024 - 06:08:11 EST


On Mon, Oct 14, 2024 at 10:47:24AM +1000, Gavin Shan wrote:
> Run into build warning caused by export_uuid() where the UUID's
> length exceeds that of ffa_value_t::a2, as the following warning
> messages indicate.
>
> In function ‘fortify_memcpy_chk’,
> inlined from ‘export_uuid’ at ./include/linux/uuid.h:88:2,
> inlined from ‘ffa_msg_send_direct_req2’ at drivers/firmware/arm_ffa/driver.c:488:2:
> ./include/linux/fortify-string.h:571:25: error: call to ‘__write_overflow_field’ \
> declared with attribute warning: detected write beyond size of field (1st parameter); \
> maybe use struct_group()? [-Werror=attribute-warning]
> 571 | __write_overflow_field(p_size_field, size);
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>
> Fix it by not passing a plain buffer to memcpy() to avoid the overflow
> and underflow warning, similar to what have been done to copy over the
> struct ffa_send_direct_data2.
>

Are you observing this just on the upstream or -next as well? There is a
fix in the -next which I haven't sent to soc team yet, will do so soon.

--
Regards,
Sudeep