[OE-core] u-boot crash on network code hardkernel v2017.05

Paulo Neves ptsneves at gmail.com
Mon Jul 23 07:46:56 UTC 2018


@Alex: Thanks for that commit id. I tried to manually add the
attribute but just to the net include[1], but the problem had not been
solved. I see in this commit more packed attributes changes, so I will
give it a try and let you all know.

>can you see if latest u-boot also have similar issues ?
>For me in past hardkernel uboot required gcc 4.9 and moment
>i switched to newer gcc it borked.
@Khem I saw your recipe commit, and was ready to commit to the same
solution you did in meta-odroid, of just downloading the prebuilt
linaro toolchain and use it to build u-boot. Even so this raises an
issue: Is there not a better way to depend on a version of GCC for a
specific recipe? Solving issues like these can be way beyond most
people's abilities (at least my own), and having a mechanism in yocto
to choose another gcc version might be desirable.

Paulo Neves

[1] https://lists.denx.de/pipermail/u-boot//2017-July/298986.html

On Sat, Jul 21, 2018 at 9:52 PM, Alex Kiernan <alex.kiernan at gmail.com> wrote:
> On Sat, Jul 21, 2018 at 11:09 AM Paulo Neves <ptsneves at gmail.com> wrote:
>>
>> Hello,
>>
>> I use a modified version of meta-odroid so that I can build u-boot
>> from hardkernel v2017.05
>> (https://github.com/hardkernel/u-boot.git@88af53fbcef8386cb4d5f04c19f4b2bcb69e90ca)
>>
>> Recently i noticed my u-boot crashes in any network operation (even
>> ping) if it is compiled by the yocto toolchain. To abstract away any
>> recipe differences and narrow down my changes to the toolchain, I
>> cloned the hardkernel repository and made
>>
>> With Ubuntu 16.04.4 LTS and gcc-arm-linux-gnueabihf package [1]
>>
>> make CROSS_COMPILE=arm-linux-gnueabihf- ARCH=arm odroid-xu4_defconfig
>> make CROSS_COMPILE=arm-linux-gnueabihf- ARCH=arm
>> cd ./sdfuse
>> ./sdfuse.sh /dev/mmcblk0
>>
>> The Odroid successfully boots
>>
>> On the other hand the exact same commands on the same workspace but
>> with the PATH set to the yocto recipe-sysroot (sumo) I am able to boot
>> but upon using a network resource it always hangs as below [2]. This
>> is exactly the same crash behavior as the one produced by the normal
>> yocto build.With u-boot built with the yocto toolchain, if i try to
>> boot from the sd card everything works fine. The only way that the
>> yocto toolchain seems to impact is in network related operations in
>> u-boot. I have tried to correct some of the minor warnings that pop up
>> in both versions. I also tried to build with -O0 but the problem
>> persists.
>>
>> [1]
>> ~/Projects/u-boot$ arm-linux-gnueabihf-gcc -v
>> Using built-in specs.
>> COLLECT_GCC=arm-linux-gnueabihf-gcc
>> COLLECT_LTO_WRAPPER=/usr/lib/gcc-cross/arm-linux-gnueabihf/5/lto-wrapper
>> Target: arm-linux-gnueabihf
>> Configured with: ../src/configure -v --with-pkgversion='Ubuntu/Linaro
>> 5.4.0-6ubuntu1~16.04.9'
>> --with-bugurl=file:///usr/share/doc/gcc-5/README.Bugs
>> --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++
>> --prefix=/usr --program-suffix=-5 --enable-shared
>> --enable-linker-build-id --libexecdir=/usr/lib
>> --without-included-gettext --enable-threads=posix --libdir=/usr/lib
>> --enable-nls --with-sysroot=/ --enable-clocale=gnu
>> --enable-libstdcxx-debug --enable-libstdcxx-time=yes
>> --with-default-libstdcxx-abi=new --enable-gnu-unique-object
>> --disable-libitm --disable-libquadmath --enable-plugin
>> --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk
>> --enable-gtk-cairo
>> --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-5-armhf-cross/jre
>> --enable-java-home
>> --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-5-armhf-cross
>> --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-5-armhf-cross
>> --with-arch-directory=arm
>> --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libgcj
>> --enable-objc-gc --enable-multiarch --enable-multilib
>> --disable-sjlj-exceptions --with-arch=armv7-a --with-fpu=vfpv3-d16
>> --with-float=hard --with-mode=thumb --disable-werror --enable-multilib
>> --enable-checking=release --build=x86_64-linux-gnu
>> --host=x86_64-linux-gnu --target=arm-linux-gnueabihf
>> --program-prefix=arm-linux-gnueabihf-
>> --includedir=/usr/arm-linux-gnueabihf/include
>> Thread model: posix
>> gcc version 5.4.0 20160609 (Ubuntu/Linaro 5.4.0-6ubuntu1~16.04.9
>>
>> [2] TFTP from server 192.168.3.123; our IP address is 192.168.3.71
>> Filename 'zImage'.
>> Load address: 0x40008000
>> Loading: *
>>
>>
>> Let me know if you have any suggestions.
>> Paulo Neves
>
> Try cherry-picking 704f3acfcf55343043bbed01c5fb0a0094a68e8a:
>
> http://git.denx.de/?p=u-boot.git;a=commit;h=704f3acfcf55343043bbed01c5fb0a0094a68e8a
>
> --
> Alex Kiernan



More information about the Openembedded-core mailing list