On Wed, Apr 4, 2018 at 9:14 AM, Andre McCurdy <armccu...@gmail.com> wrote: > On Wed, Apr 4, 2018 at 8:06 AM, Chris Elledge > <celle...@digitallumens.com> wrote: >> Thanks for the feedback. I rolled back binutils to 2.28.0 by copying the >> yocto-2.3.3 binutils recipe directory into my custom layer. That has >> resolved the issue. >> >> I can confirm that binutils 2.29.0 also has the problem. I went from >> yocto-2.3 to 2.4.2 so I hadn't tried binutils 2.29.0 previously. There are >> also reports that openssl and libavcodec are broken when targeting an ARM >> Thumb2 platform with binutils 2.29.* > > Yes, that makes sense. The binutils change is in both 2.29.0 and > 2.29.1 (and also in 2.30.0). > > The next useful experiment would be to stay with binutils 2.29.1 and > apply a patch to revert the one particular commit which caused the > change in behaviour: > > > https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commitdiff;h=e645cf40b111daef4518a58547de577eb9379ccb
The experiment of patching the kernel would also be useful, since I would guess that the final solution from upstream will involve a change to the kernel rather than reverting the change to binutils. Changing "+ 1" to "| 1" in the badr macro would be a universal solution for all versions of binutils, but for a quick test with binutils 2.29.1 you could simply remove the "+ 1" from the CONFIG_THUMB2_KERNEL case (ie make the ARM and Thumb2 versions of the macro identical). https://github.com/torvalds/linux/blob/master/arch/arm/include/asm/assembler.h#L197 -- _______________________________________________ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto