On Mon, Dec 04, 2017 at 05:04:02PM +0100, Philipp Tomsich wrote:

> Since commit 2614a208471e ("common: command: tempory buffer should
> have size of command line buf"), there have been consistent Travis CI
> failures on my builds (interestingly not for Tom, even though building
> the same commit id) due to a SEGV in building the byteswapped
> omapimage:
>           arm: pcm051_rev3
>      make[2]: *** [MLO.byteswap] Error 139
>                                      ^^^ error code for a SEGV
> 
> Turns out that the word-based byte-swapping loop in omapimage.c is to
> blame. With the loop condition
>        while (swapped <= (sbuf->st_size / sizeof(uint32_t)))
> there had been one-too-many iterations for all file sizes divisible by
> the sizeof(uint32_t).  I.e. we had 1 iteration for 0 bytes (and also 1
> through 3 bytes) and 2 iterations at 4 bytes... clearly overshooting
> on 0 and 4 bytes.
> 
> This commit fixes the calculation of an up-rounded word-count and
> makes sure to keep the zero-based loop-counter below the number of
> words to be processed.
> 
> References: 2614a20 ("common: command: tempory buffer should have size of 
> command line buf")
> Fixes: 79b9ebb ("omapimage: Add support for byteswapped SPI images")
> Signed-off-by: Philipp Tomsich <philipp.toms...@theobroma-systems.com>
> Reviewed-by: Martin Elshuber <martin.elshu...@theobroma-systems.com>

Applied to u-boot/master, thanks!

-- 
Tom

Attachment: signature.asc
Description: PGP signature

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to