From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============6261654641807186342==" MIME-Version: 1.0 From: Mark Wielaard To: elfutils-devel@lists.fedorahosted.org Subject: Re: Dwarf unwind test failures on various arches Date: Tue, 22 Apr 2014 13:45:43 +0200 Message-ID: <1398167143.29199.167.camel@bordewijk.wildebeest.org> In-Reply-To: 20140421214014.GA16859@roeckx.be --===============6261654641807186342== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable On Mon, 2014-04-21 at 23:40 +0200, Kurt Roeckx wrote: > I'm seeing various test suite failures in the 0.158 on various > arches. I'm currently looing at powerpc since that's the only > Debian release architecture that's having the problem, but I see > it on various non-release arches too. Thanks for the report. It would be nice if you could always output the test-suite.log file if the tests fail so they are available in the build.log. I did that in the fedora package: make -s %{?_smp_mflags} check || (cat tests/test-suite.log; %{nocheck}) where %{nocheck} is either true or false depending on whether we want make check failures be fatal or not (normally we do on release branches). That way it might be quicker to spot what is going wrong just by looking at the build log in case you don't have immediate access to that platform/arch. The tests should in theory all PASS or just SKIP if it is detected that some functionality isn't available on a particular arch/setup. Clearly that isn't completely working in your case :{ The unwind/backtrace tests should all PASS on i686, x86_64, ppc, ppc64, One question, is this traditional big endian ppc or the new ELFv2 ABI ppc64-le architecture? elfutils currently doesn't have a backend for the new ELFv2 ABI. It will detect that the ELF files are little endian, but it won't know about the other ELFv2 changes (no function descriptors, different calling conventions, etc.) > FAIL: run-backtrace-native.sh > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D > = > 0x100000 0x103000 [vdso: 14111] > 0x20474000 0x20601000 /lib/powerpc-linux-gnu/libc-2.18.so > 0x20614000 0x2063d000 /lib/powerpc-linux-gnu/libpthread-2.18.so > 0x2064f000 0x20662000 /home/kroeckx/elfutils-0.158/tests/backtr= ace-child > 0x40000000 0x40033000 /lib/powerpc-linux-gnu/ld-2.18.so > TID 14111: > # 0 0x20626810 raise > TID 14112: > # 0 0x20626810 raise > /home/kroeckx/elfutils-0.158/tests/backtrace: dwfl_thread_getframes: No D= WARF information found > /home/kroeckx/elfutils-0.158/tests/backtrace: dwfl_thread_getframes: No D= WARF information found > backtrace: backtrace.c:68: callback_verify: Assertion `seen_main' failed. > ./test-subr.sh: line 84: 14110 Aborted (core dumped) LD_L= IBRARY_PATH=3D"${built_library_path}${LD_LIBRARY_PATH:+:}$LD_LIBRARY_PATH" = $VALGRIND_CMD "$@" > backtrace-child: no main That is strange. It is as if libpthread-2.18.so doesn't have .eh_frame available. Could you check? > FAIL: run-backtrace-dwarf.sh > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D > = > 0xfdf8e08 raise > /home/kroeckx/elfutils-0.158/tests/backtrace-dwarf: dwfl_thread_getframes= : No DWARF information found > dwarf: no main > rmdir: failed to remove 'test-14137': Directory not empty This is probably similar. Note that Mathias Klose did find a test issues right after 0.158 was released that improved the tests in some cases detecting support wasn't really available. See commit e922ec. But that was for core files, which do seem to work for you. Which is somewhat puzzling. Since I would expect both run-backtrace-native-core.sh and run-backtrace-native.sh to fail (or succeed) in the same way. Cheers, Mark --===============6261654641807186342==--