[oe] Query on meta-java layer openjdk-7-jre build

Max Krummenacher max.oss.09 at gmail.com
Tue Jan 20 15:21:12 UTC 2015


Hello

2015-01-19 13:41 GMT+01:00 Otavio Salvador <otavio at ossystems.com.br>:
> Hello Max,
>
> On Mon, Jan 19, 2015 at 9:56 AM, Max Krummenacher <max.oss.09 at gmail.com> wrote:
>> I made some progress.
>> We seem to be discussing two issues
>>
>> 1)
>> qemu stops with a segmentation fault.
>> When DEFAULTTUNE is "armv7ahf" or "armv7athf" and a binary is compiled
>> with "-static" and the gold linker is used, then the resulting binary
>> does not run on qemu or on real hardware.
>> The Angstrom distribution by default uses gold, so the issue presents
>> itself when using Angstrom. On the fsl-arm setup with poky gold is not
>> even built so one will not trigger the bug.
>> The solution for this is to change all compiler calls used for qemu
>> run binaries to include -fuse-ld=bfd.
>>
>> 2)
>> qemu runs indefinitely.
>> While hunting the above mentioned bug I found that when using qemu
>> with the sysroot, i.e. using the -L <path-to-sysroot> parameter qemu
>> executes and never returns.
>> On my machine free shows increasingly used RAM but I was to impatient
>> to ever see an OOM kill of qemu but maybe this is also what Colin
>> experiences and probably also why Alex does have issues with the "-L"
>> change.
>
> Awesome analysis; I've been looking for some free time to debug this
> for a while do a HUGE thanks for all your work on this :-)
Welcome

>
>> An strace qemu .... run shows that qemu runs in circles of recursive
>> symlink in /usr/lib/udev/ptest/.... files.
>> Using the fsl-arm setup with poky enables ptest. When udev has been
>> compiled in this setup those testfiles have been staged and qemu
>> chokes on them..
>> http://lists.openembedded.org/pipermail/openembedded-core/2014-September/097098.html
>>
>> a) One way to go would be to fix udev in oe-core, e.g.
>> index 0f8e9b6..a93b58d 100644
>> --- a/meta/recipes-core/udev/udev/add-install-ptest.patch
>> +++ b/meta/recipes-core/udev/udev/add-install-ptest.patch
>> @@ -21,7 +21,7 @@ Upstream-Status: Pending
>>  +    sed -i -e 's|^Makefile:|_Makefile:|' $(DESTDIR)/Makefile
>>  +    $(MKDIR_P) $(DESTDIR)/test
>>  +    (cd $(top_srcdir) && install $(TESTS) $(DESTDIR)/test)
>> -+    tar -C $(DESTDIR)/test/ -xJf $(top_srcdir)/test/sys.tar.xz
>> ++    cp  $(top_srcdir)/test/sys.tar.xz $(DESTDIR)/test/
>>  --- a/test/udev-test.pl    2012-03-18 16:43:36.000000000 +0100
>>  +++ b/test/udev-test.pl    2013-02-18 10:31:29.706357321 +0100
>>  @@ -1459,11 +1459,13 @@
>> diff --git a/meta/recipes-core/udev/udev/run-ptest
>> b/meta/recipes-core/udev/udev/run-ptest
>> index c6961ce..0e39806 100644
>> --- a/meta/recipes-core/udev/udev/run-ptest
>> +++ b/meta/recipes-core/udev/udev/run-ptest
>> @@ -1,3 +1,5 @@
>>  #!/bin/sh
>>
>> +tar -C test/ -xJf test/sys.tar.xz
>>  make -k check-TESTS
>> +make test-sys-distclean
>> --
>> 1.8.4.5
>
> It'd be great if you could prepare a patch to address this in OE-Core;
> once it proves stable we can ask for it to be backported for Dizzy.
I have a look how to test this patch, i.e. if those unit tests still execute as
expected. So that will take a few days.

>
>> b) The quick fix would be to revert passing qemu the sysroot and make
>> sure that all binaries qemu executes are linked statically. As issue
>> 1) now can be addressed without linking dynamically I don't see real
>> disadvantages.
>> revert http://git.yoctoproject.org/cgit/cgit.cgi/meta-java/commit/?id=ab51e51d9a9a51bedd19de09bcba4ce830dfc5e7
>
> Agreed; we should do this.
>
>> c) The even quicker fix is to delete the testdata, i.e.
>> rm  -rf <target-sysroot>/usr/lib/udev/ptest/test/sys
>>
>>
>> I will create/send a patch to address issues 1) and 2) solution b).
>
> As said above, please do a proper patch for OE-Core as well; so we
> solve the root cause of qemu failure. This allow us to use it later if
> we want to.
>
> Another thing, please add a link for this discussion in the commit
> log; when looking similar issues in future this can reduce a lot the
> research time :)
The patches to meta-java are done:
http://lists.openembedded.org/pipermail/openembedded-devel/2015-January/099895.html

>
> --
> Otavio Salvador                             O.S. Systems
> http://www.ossystems.com.br        http://code.ossystems.com.br
> Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750

Regards
Max



More information about the Openembedded-devel mailing list