[U-Boot] [PATCH 1/1] lib: uuid: alignment error in gen_rand_uuid()
Tom Rini
trini at konsulko.com
Tue Jul 30 01:23:40 UTC 2019
On Sun, Jul 14, 2019 at 11:31:50PM +0200, Heinrich Schuchardt wrote:
> Packed structures like struct uuid are not aligned. GCC 9.1 therefore
> throws an error when trying to compile gen_rand_uuid().
>
> lib/uuid.c: In function ‘gen_rand_uuid’:
> lib/uuid.c:244:2: error: converting a packed ‘struct uuid’ pointer
> (alignment 1) to a ‘unsigned int’ pointer (alignment 4) may result in
> an unaligned pointer value [-Werror=address-of-packed-member]
> 244 | unsigned int *ptr = (unsigned int *)&uuid;
> | ^~~~~~~~
>
> Generate the uuid in a properly aligned buffer.
>
> The byte order of a random number should not matter. Do not call
> cpu_to_be32() to change the byte order.
>
> Reported-by: Ramon Fried <rfried.dev at gmail.com>
> Signed-off-by: Heinrich Schuchardt <xypron.glpk at gmx.de>
Applied to u-boot/master, thanks!
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20190729/dc2c9108/attachment.sig>
More information about the U-Boot
mailing list