ftbfs on arm64

Bug #1798700 reported by Michael Hudson-Doyle on 2018-10-19
This bug affects 1 person
Affects Status Importance Assigned to Milestone
elfutils (Ubuntu)

Bug Description

elfutils ftbfs on sid on arm64 currently:

FAIL: run-backtrace-dwarf.sh

0xffffb3c5373c raise
0xffffb3c418e8 abort
/<<PKGBUILDDIR>>/tests/backtrace-dwarf: dwfl_thread_getframes: (null)
dwarf: no main
FAIL run-backtrace-dwarf.sh (exit status: 1)

FAIL: run-deleted.sh

PID 19405 - process
TID 19405:
#0 0x0000ffff81e7f3e0 __nanosleep
#1 0x0000ffff81e7f2c0 sleep
/<<PKGBUILDDIR>>/src/stack: dwfl_thread_getframes tid 19405 at 0xffff81e7f2bf in /lib/aarch64-linux-gnu/libc-2.28.so: (null)
FAIL run-deleted.sh (exit status: 1)

Current git passes, and git bisect and logic point to the following upstream commit as fixing it:

commit f881459ffc95b6fad51aa055a158ee14814073aa
Author: Mark Wielaard <email address hidden>
Date: Wed Apr 11 10:37:45 2018 +0200

    aarch64: Add default cfi rule to restore SP from CFA address.

    The CFA is set by default to the stack pointer of the previous frame.
    So that is also how we can always restore the SP. This default aarch64
    CFI rule is necessary on Fedora 28 with GCC8 to make the run-deleted.sh
    and run-backtrace-dwarf.sh testcases work.

    Signed-off-by: Mark Wielaard <email address hidden>

Debugging the test failure made it clear that the libdw1 in the archive will not be able to successfully walk the stack of processes built by gcc-8, i.e. this is a regression in runtime functionality. I don't know if any of the revdeps of libdw1 depend on this but it seems at least possible and the patch to fix all this is pretty simple so my inclination is that this meets the threshold for an SRU.

[test case]
Build the package on arm64.

[regression potential]
The patch is small, fairly (given the general level of hairiness around here) simple and only affects the functionality that is currently broken. There's always the chance that building with a new toolchain will introduce new problems, but there's not much we can do about that.

Hello Michael, or anyone else affected,

Accepted elfutils into cosmic-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/elfutils/0.170-0.5.0ubuntu1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-needed-cosmic to verification-done-cosmic. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-cosmic. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in elfutils (Ubuntu Cosmic):
status: New → Fix Committed
tags: added: verification-needed verification-needed-cosmic
Michael Hudson-Doyle (mwhudson) wrote :

As above, the build passing is a sufficient test for this.

tags: added: verification-done-cosmic
removed: verification-needed verification-needed-cosmic
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package elfutils - 0.170-0.5.0ubuntu1

elfutils (0.170-0.5.0ubuntu1) cosmic; urgency=medium

  * Add d/patches/0001-aarch64-Add-default-cfi-rule-to-restore-SP-from-CFA-.patch
    to fix walking the stack of arm64 binaries compiled with GCC 8. (LP: #1798700)

 -- Michael Hudson-Doyle <email address hidden> Thu, 18 Oct 2018 20:06:01 +1300

Changed in elfutils (Ubuntu):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers