public inbox for elfutils@sourceware.org
 help / color / mirror / Atom feed
* Re: Dwarf unwind test failures on various arches
@ 2014-04-22 11:45 Mark Wielaard
  0 siblings, 0 replies; 3+ messages in thread
From: Mark Wielaard @ 2014-04-22 11:45 UTC (permalink / raw)
  To: elfutils-devel

[-- Attachment #1: Type: text/plain, Size: 3274 bytes --]

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
> =============================
> 
> 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/backtrace-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 DWARF information found
> /home/kroeckx/elfutils-0.158/tests/backtrace: dwfl_thread_getframes: No DWARF information found
> backtrace: backtrace.c:68: callback_verify: Assertion `seen_main' failed.
> ./test-subr.sh: line 84: 14110 Aborted                 (core dumped) LD_LIBRARY_PATH="${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
> ============================
> 
> 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


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Dwarf unwind test failures on various arches
@ 2014-04-22 16:14 Kurt Roeckx
  0 siblings, 0 replies; 3+ messages in thread
From: Kurt Roeckx @ 2014-04-22 16:14 UTC (permalink / raw)
  To: elfutils-devel

[-- Attachment #1: Type: text/plain, Size: 2922 bytes --]

On Tue, Apr 22, 2014 at 01:45:43PM +0200, Mark Wielaard wrote:
> 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})

I'll add something like that, if I don't forget.

> 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.)

It's the a 32 bit big endian powerpc, I assume it's the ABI that
has existed for over 10 years.

> > FAIL: run-backtrace-native.sh
> > =============================
> > 
> > 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/backtrace-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 DWARF information found
> > /home/kroeckx/elfutils-0.158/tests/backtrace: dwfl_thread_getframes: No DWARF information found
> > backtrace: backtrace.c:68: callback_verify: Assertion `seen_main' failed.
> > ./test-subr.sh: line 84: 14110 Aborted                 (core dumped) LD_LIBRARY_PATH="${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?

It does have an .eh_frame

> > FAIL: run-backtrace-dwarf.sh
> > ============================
> > 
> > 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.

I know about it, he talked to me to find out what the problem was.
The patch has been applied.


Kurt


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Dwarf unwind test failures on various arches
@ 2014-04-21 21:40 Kurt Roeckx
  0 siblings, 0 replies; 3+ messages in thread
From: Kurt Roeckx @ 2014-04-21 21:40 UTC (permalink / raw)
  To: elfutils-devel

[-- Attachment #1: Type: text/plain, Size: 2238 bytes --]

Hi,

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.

The test-suite.log file contains:
==========================================
   elfutils 0.158: tests/test-suite.log
==========================================

# TOTAL: 113
# PASS:  108
# SKIP:  3
# XFAIL: 0
# FAIL:  2
# XPASS: 0
# ERROR: 0

.. contents:: :depth: 2

FAIL: run-backtrace-native.sh
=============================

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/backtrace-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 DWARF information found
/home/kroeckx/elfutils-0.158/tests/backtrace: dwfl_thread_getframes: No DWARF information found
backtrace: backtrace.c:68: callback_verify: Assertion `seen_main' failed.
./test-subr.sh: line 84: 14110 Aborted                 (core dumped) LD_LIBRARY_PATH="${built_library_path}${LD_LIBRARY_PATH:+:}$LD_LIBRARY_PATH" $VALGRIND_CMD "$@"
backtrace-child: no main

SKIP: run-backtrace-data.sh
===========================

/home/kroeckx/elfutils-0.158/tests/backtrace-data: Unwinding not supported for this architecture
data: arch not supported

FAIL: run-backtrace-dwarf.sh
============================

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

SKIP: run-backtrace-native-biarch.sh
====================================


SKIP: run-backtrace-native-core-biarch.sh
=========================================


It seems that for --backtrace-exec it thinks it has support for
unwinding information even when it doesn't and then fails.


Kurt


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2014-04-22 16:14 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-04-22 11:45 Dwarf unwind test failures on various arches Mark Wielaard
  -- strict thread matches above, loose matches on Subject: below --
2014-04-22 16:14 Kurt Roeckx
2014-04-21 21:40 Kurt Roeckx

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).