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
signature.asc
Description: PGP signature
_______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot