gdb ftbfs on armhf, testsuite timeouts

Bug #1927192 reported by Matthias Klose
16
This bug affects 2 people
Affects Status Importance Assigned to Milestone
gdb
Fix Released
Medium
gdb (Ubuntu)
Status tracked in Mantic
Focal
Fix Released
Undecided
Unassigned
Groovy
Won't Fix
Undecided
Unassigned
Hirsute
Won't Fix
Undecided
Unassigned
Impish
Fix Released
High
Unassigned
Jammy
Fix Released
Undecided
Unassigned
Kinetic
Fix Released
Undecided
Unassigned
Lunar
Fix Released
Undecided
Unassigned
Mantic
Fix Released
High
Unassigned
glibc (Ubuntu)
Status tracked in Mantic
Focal
Fix Released
Undecided
Unassigned
Groovy
Won't Fix
Undecided
Unassigned
Hirsute
Won't Fix
Undecided
Unassigned
Impish
Fix Released
Undecided
Unassigned
Jammy
Fix Released
Medium
Unassigned
Kinetic
Won't Fix
Undecided
Unassigned
Lunar
Won't Fix
Undecided
Unassigned
Mantic
In Progress
High
Unassigned

Bug Description

[Impact]

* Gdb can't set some breakpoints in ld.so on armhf when libc6-dbg is not installed.

[Test Plan]

* Check that ld.so is not stripped on armhf:
$ /lib/*/ld-2.31.so
libc6/lib/arm-linux-gnueabihf/ld-2.31.so: ELF 32-bit LSB shared object, ARM, EABI5 version 1 (SYSV), dynamically linked, BuildID[sha1]=e20a43bff0c4d2aa7f508c93eadad973ea0c0af9, with debug_info, not stripped

* Check that ld.so is stripped on amd64:

$ file /lib/x86_64-linux-gnu/ld-2.31.so
/lib/x86_64-linux-gnu/ld-2.31.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=ea85fcb25ee4c4c9e7b180924ab4a44257a9547a, stripped

[Where problems could occur]

* The fix is not stripping ld.so on armhf. Not stripping it comes with a notable increase in file size and it may be performance critical 109K stripped vs 1.3M unstripped. Accidentally ld.so could be left unstripped on other architectures, but the test plan covers checking that, at least on amd64. Other than those not stripping ld.so should not cause any issue.

[Original Bug Text]

see https://launchpad.net/ubuntu/+source/gdb/10.2-0ubuntu3

$ zcat buildlog_ubuntu-impish-armhf.gdb_10.2-0ubuntu3_BUILDING.txt.gz | fgrep '(timeout)'|wc -l
10451

CVE References

Matthias Klose (doko)
tags: added: ftbfs
Changed in gdb (Ubuntu):
status: New → Confirmed
importance: Undecided → High
tags: added: rls-ii-incoming
summary: - gdb ftbfs on armha, tessuite timeouts
+ gdb ftbfs on armhf, testsuite timeouts
Revision history for this message
In , Matthias Klose (doko) wrote :

trying to run the testsuite on arm-linux-gnueabihf for 10.2 and trunk 20210502, I see around 10000 test failures, not seen on other architectures using the same build environment (amd64, arm64, i386, ppc64el, s390x)

see https://launchpad.net/ubuntu/+source/gdb/10.2-0ubuntu3

$ zcat buildlog_ubuntu-impish-armhf.gdb_10.2-0ubuntu3_BUILDING.txt.gz | fgrep '(timeout)'|wc -l
10451

the build environment is binutils 2.36.1, gcc 10.3, glibc 2.33 (updated to the 2.33 branch).

the build log show all the test cases which are timing out, there still seems to be at least another running test, as the whole build times out.

Revision history for this message
In , Luis (freezehawk) wrote :

Could you please attach the log file that contains all the output/input from GDB and the tests?

Changed in gdb:
importance: Unknown → Medium
status: Unknown → Confirmed
tags: removed: rls-ii-incoming
tags: added: fr-1346
Revision history for this message
In , Luis (freezehawk) wrote :

After investigating this, the root cause of the timeouts is caused by GDB using the wrong type of breakpoint (between a 4 bytes ARM breakpoint and a 2 bytes thumb breakpoint), which causes some unexpected results.

The reason why this is happening is a bit more complex though. GDB has a couple mechanisms for tracking loading/unloading of shared libraries in dynamically-linked binaries. Via _dl_debug_state and r_brk and via stap probes.

Up until Ubuntu 18.04 (glibc 2.27), GDB could not use the stap probes mechanism because it ran into a bug when parsing stap expression, thus failing the check and falling back to using the old _dl_debug_state and r_brk mechanism.

The _dl_debug_state/r_brk mechanism works because we have an entry for _dl_debug_state in the .dynsym section of ld.so. Even though ld.so is completely stripped of mapping symbols (another way to tell arm/thumb modes apart), which are only available via the debug symbols file, GDB can still tell _dl_debug_state is arm or thumb mode because the ELF symbol carries a flag indicating so. That's why this fallback mechanism works.

On Ubuntu 20.04, running glibc 2.31, GDB no longer runs into problems with stap probes. Thus GDB decides to use this mechanism instead of the old _dl_debug_state/r_brk one.

Both mechanisms function by having GDB insert breakpoints at specific location so shared library events can be tracked. But in the stap probes case there are no real symbols.

What we have is metadata that contains the name of the probe and its address. This address falls within a particular function. For example, init_start and init_complete are probe points that fall within dl_main. The probe points do not seem to carry any information about whether we have arm or thumb mode.

As before, the mapping symbols should tell us what the mode is, but ld.so is stripped and doesn't carry those. But GDB could look at the ELF symbol of the function the probe is sitting at, except that these symbols (not considered special in any way) have been stripped as well. So the arm/thumb information is completely gone and GDB can no longer make the correct decision.

So GDB defaults to assuming arm mode for the breakpoint to use, which is obviously wrong for thumb code.

There are two possible solutions:

1 - Fallback to using _dl_debug_state/r_brk for armhf in GDB. This is considered bad by GDB's maintainers, because it means using an outdated mechanism instead of better interfaces.

2 - Don't strip glibc/ld.so function symbols that have stap probes installed in them.

Right now, these are the functions that contain probes and that GDB wants to breakpoint in a special way:

_dl_main, _dl_map_object_from_fd, lose, dl_open_worker and _dl_close_worker

Changed in gdb:
status: Confirmed → Incomplete
Revision history for this message
Matthias Klose (doko) wrote :

It's ok to strip glibc/ld.so on armhf, but then gdb needs to be able to find the debug symbols.

For impish,

 - call dh_strip in glibc with current debhelper, not compat 8,
   so that the build-id's are resolved by build file system
   layout, not the original file names. That's already done in
   glibc 2.33-0ubuntu6

 - let the gdb build depend on libc6-dbg on armhf, also let
   gdb depend on libc6-dbg on armhf, instead of recommending
   it.

The alternative is not to strip glibc's ld.so on armhf, as Luis suggested.

tags: added: rls-ff-incoming rls-gg-incoming rls-hh-incoming
Changed in glibc (Ubuntu Impish):
status: New → Fix Committed
Changed in gdb (Ubuntu Impish):
status: Confirmed → Fix Committed
Revision history for this message
In , Matthias Klose (doko) wrote :

or 3) make sure that the detached debug information for ld.so is available and can be found.

Revision history for this message
In , Luis (freezehawk) wrote :

3) is fine, but can you guarantee the detached information will always be available?

Having the required data in the ld.so file itself would be best.

tags: removed: rls-ff-incoming rls-gg-incoming rls-hh-incoming
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package gdb - 10.2-0ubuntu4

---------------
gdb (10.2-0ubuntu4) impish; urgency=medium

  * Build-depend / depend on libc6-dbg on armhf. LP: #1927192.

 -- Matthias Klose <email address hidden> Fri, 07 May 2021 15:39:43 +0200

Changed in gdb (Ubuntu Impish):
status: Fix Committed → Fix Released
Revision history for this message
Matthias Klose (doko) wrote :
Revision history for this message
Balint Reczey (rbalint) wrote :

@doko Would fixing the symlink as suggested in LP: #1918035 help instead of not stripping ld-*?

Revision history for this message
Matthias Klose (doko) wrote :

No, you would need to provide symlinks for all variants, for the real file and all the symlinks.

The unstripped ld.so is 220k, the stripped one 192k. So these 28k look pretty marginal to add, and I wouldn't see this a regression in size.

Attaching the diff that already is in the glibc in impish. I don't see regression potential with this patch.

tags: added: patch
Revision history for this message
Balint Reczey (rbalint) wrote :

@doko would it be enough keep ld-* unstripped on armhf and armel only?

Revision history for this message
Matthias Klose (doko) wrote : Re: [Bug 1927192] Re: gdb ftbfs on armhf, testsuite timeouts

On 5/31/21 8:03 PM, Balint Reczey wrote:
> @doko would it be enough keep ld-* unstripped on armhf and armel only?

sure, that would fix the immediate issue. but is there a reason why you don't
want to have this across all architectures, or is this meant just for the backports?

Revision history for this message
Balint Reczey (rbalint) wrote :

@doko since the problem is arm-specific I don't want to deviate from the default stripping on architectures where it is not necessary. Not that the 28k would be so huge, but for the sake of not changing what was already good.

Balint Reczey (rbalint)
description: updated
Revision history for this message
Balint Reczey (rbalint) wrote :

@doko Not stripping ld.so on Focal came with an increase of ld.so from 110K to 1.3M. I don't think this is an acceptable increase when pulling in libc6-dbg also fixes the problem.

See the test package here: https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/4570

description: updated
Changed in glibc (Ubuntu Hirsute):
status: New → Opinion
Changed in glibc (Ubuntu Groovy):
status: New → Opinion
Changed in glibc (Ubuntu Focal):
status: New → Opinion
Revision history for this message
Balint Reczey (rbalint) wrote :

IMO the change should be reverted later in Impish as well.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package glibc - 2.33-0ubuntu9

---------------
glibc (2.33-0ubuntu9) impish; urgency=medium

  * debian/patches/git-updates.diff: update from upstream stable branch
    - CVE-2021-33574: The mq_notify function has a potential use-after-free
      issue when using a notification type of SIGEV_THREAD and a thread
      attribute with a non-default affinity mask.
    - [15271] dlfcn function failure after dlmopen terminates process.
    - [27646] gethostbyname and NSS crashes after dlmopen.
    - x86_64: Remove unneeded static PIE check for undefined weak diagnostic.

 -- Matthias Klose <email address hidden> Tue, 13 Jul 2021 08:26:17 +0200

Changed in glibc (Ubuntu Impish):
status: Fix Committed → Fix Released
Changed in gdb (Ubuntu Groovy):
status: New → Won't Fix
Changed in gdb (Ubuntu Hirsute):
status: New → Won't Fix
Revision history for this message
Steve Langasek (vorlon) wrote :

Why was dh_strip previously being called with an override of DH_COMPAT=8, and why is this safe to drop in SRU as part of this change?

Changed in glibc (Ubuntu Focal):
status: Opinion → Incomplete
Revision history for this message
Steve Langasek (vorlon) wrote :

Sorry, I see this is explained in another changelog entry / bug.

Changed in glibc (Ubuntu Focal):
status: Incomplete → In Progress
Revision history for this message
Steve Langasek (vorlon) wrote : Please test proposed package

Hello Matthias, or anyone else affected,

Accepted glibc into focal-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/glibc/2.31-0ubuntu9.4 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, what testing has been performed on the package and change the tag from verification-needed-focal to verification-done-focal. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-focal. 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 glibc (Ubuntu Focal):
status: In Progress → Fix Committed
tags: added: verification-needed verification-needed-focal
Mathew Hodson (mhodson)
Changed in glibc (Ubuntu Groovy):
status: Opinion → Won't Fix
Changed in glibc (Ubuntu Hirsute):
status: Opinion → Won't Fix
Revision history for this message
Chris Halse Rogers (raof) wrote :

Hello Matthias, or anyone else affected,

Accepted gdb into focal-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/gdb/9.2-0ubuntu1~20.04.1 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, what testing has been performed on the package and change the tag from verification-needed-focal to verification-done-focal. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-focal. 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 gdb (Ubuntu Focal):
status: New → Fix Committed
Revision history for this message
Chris Halse Rogers (raof) wrote :

The gdb upload looks fine; I presume it wants to be marked block-proposed, though?

Revision history for this message
Brian Murray (brian-murray) wrote :

The version of gdb in focal-proposed built fine with the tests enabled and the timeouts in the buildlog were not an issue.

[ 3:25PM 11723 ] [ bdmurray@impulse:/tmp ]
 $ cat buildlog_ubuntu-focal-armhf.gdb_9.2-0ubuntu1\~20.04.1_BUILDING.txt | fgrep '(timeout)'|wc -l 9

I don't know what doko's plans are for the upload in the focal-proposed so won't comment on the block-proposed question.

Revision history for this message
Ubuntu SRU Bot (ubuntu-sru-bot) wrote : Autopkgtest regression report (glibc/2.31-0ubuntu9.4)

All autopkgtests for the newly accepted glibc (2.31-0ubuntu9.4) for focal have finished running.
The following regressions have been reported in tests triggered by the package:

snapd-glib/1.58-0ubuntu0.20.04.0 (armhf)
apt/2.0.6 (armhf)
libmath-mpfr-perl/4.13-1 (armhf)
art-nextgen-simulation-tools/20160605+dfsg-4 (armhf)
ruby-nokogiri/1.10.7+dfsg1-2build1 (armhf)
r-cran-rgdal/1.4-8-1build2 (armhf)
arrayfire/3.3.2+dfsg1-4ubuntu4 (armhf)
libpango-perl/1.227-3build1 (armhf)
libimage-sane-perl/5-1 (s390x)
ruby-bootsnap/1.4.6-1 (arm64)
mle/1.4.3-1 (ppc64el, arm64)
libsyntax-keyword-try-perl/0.11-1build1 (armhf)
awesome/4.3-4 (armhf)
cysignals/1.10.2+ds-4 (arm64)
gvfs/1.44.1-1ubuntu1 (ppc64el)
libuv1/1.34.2-1ubuntu1.3 (amd64)
bali-phy/3.4.1+dfsg-2build1 (arm64, s390x)
g10k/0.5.7-1 (armhf)
litl/0.1.9-7 (amd64)
ruby-libxml/3.1.0-2 (armhf)
ffmpeg/7:4.2.4-1ubuntu0.1 (armhf)
yorick/2.2.04+dfsg1-10 (ppc64el, s390x)
linux-ibm/5.4.0-1010.11 (amd64)
liborcus/0.15.3-3build2 (armhf)
node-nodedbi/1.0.13+dfsg-1build1 (amd64)
r-bioc-delayedarray/0.12.2+dfsg-1 (armhf)
postgresql-unit/7.2-2 (armhf)
python-freecontact/1.1-5build2 (armhf)
r-cran-rwave/2.4-8-2 (armhf)
libproc-fastspawn-perl/1.2-1build2 (armhf)
linux-hwe-5.11/5.11.0-44.48~20.04.2 (armhf)
foo2zjs/20171202dfsg0-4 (armhf)
r-cran-erm/1.0-0-1 (armhf)
libsys-cpuload-perl/0.03-8build5 (armhf)
libhttp-parser-xs-perl/0.17-1build5 (armhf)
php-luasandbox/3.0.3-2build2 (armhf)
pynfft/1.3.2-3build1 (armhf)
r-cran-processx/3.4.2-1 (ppc64el)
r-bioc-multtest/2.42.0-1 (armhf)
linux-hwe-5.13/5.13.0-23.23~20.04.2 (armhf)
python-blosc/1.7.0+ds1-2ubuntu2 (armhf)
gyoto/1.4.4-3 (armhf)
r-cran-sem/3.1.9-2build1 (armhf)
libtext-reflow-perl/1.17-1build3 (armhf)
python3.9/3.9.5-3ubuntu0~20.04.1 (armhf)
r-cran-samr/3.0-1 (armhf)
r-cran-dplyr/0.8.4-1 (armhf)
python3.8/3.8.10-0ubuntu1~20.04.2 (armhf)
findent/3.1.1-1build1 (armhf)
mercurial/5.3.1-1ubuntu1 (amd64)
libmemcached-libmemcached-perl/1.001801+dfsg-2build4 (armhf)
openbabel/3.0.0+dfsg-3ubuntu3 (armhf)

Please visit the excuses page listed below and investigate the failures, proceeding afterwards as per the StableReleaseUpdates policy regarding autopkgtest regressions [1].

https://people.canonical.com/~ubuntu-archive/proposed-migration/focal/update_excuses.html#glibc

[1] https://wiki.ubuntu.com/StableReleaseUpdates#Autopkgtest_Regressions

Thank you!

Revision history for this message
Ubuntu SRU Bot (ubuntu-sru-bot) wrote : Autopkgtest regression report (gdb/9.2-0ubuntu1~20.04.1)

All autopkgtests for the newly accepted gdb (9.2-0ubuntu1~20.04.1) for focal have finished running.
The following regressions have been reported in tests triggered by the package:

linux-hwe-5.13/5.13.0-23.23~20.04.2 (armhf)
linux-hwe-5.11/5.11.0-44.48~20.04.2 (armhf)

Please visit the excuses page listed below and investigate the failures, proceeding afterwards as per the StableReleaseUpdates policy regarding autopkgtest regressions [1].

https://people.canonical.com/~ubuntu-archive/proposed-migration/focal/update_excuses.html#gdb

[1] https://wiki.ubuntu.com/StableReleaseUpdates#Autopkgtest_Regressions

Thank you!

Revision history for this message
Brian Murray (brian-murray) wrote :

The gdb autopkgtest test failures listed in comment #24 are actually not regressions as the test result is "neutral" and they quit early due to not having machine-level isolation.

tags: added: verification-done verification-done-focal
removed: verification-needed verification-needed-focal
Revision history for this message
Chris Halse Rogers (raof) wrote : Update Released

The verification of the Stable Release Update for gdb has completed successfully and the package is now being released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package gdb - 9.2-0ubuntu1~20.04.1

---------------
gdb (9.2-0ubuntu1~20.04.1) focal; urgency=medium

  * Re-enable running the tests on armhf, build-depend / depend on libc6-dbg
    on armhf. (LP: #1927192)

 -- Brian Murray <email address hidden> Tue, 07 Dec 2021 15:49:12 -0800

Changed in gdb (Ubuntu Focal):
status: Fix Committed → Fix Released
Revision history for this message
Brian Murray (brian-murray) wrote : Please test proposed package

Hello Matthias, or anyone else affected,

Accepted glibc into focal-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/glibc/2.31-0ubuntu9.5 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, what testing has been performed on the package and change the tag from verification-needed-focal to verification-done-focal. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-focal. 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.

tags: added: verification-needed verification-needed-focal
removed: verification-done verification-done-focal
Revision history for this message
Ubuntu SRU Bot (ubuntu-sru-bot) wrote : Autopkgtest regression report (glibc/2.31-0ubuntu9.5)

All autopkgtests for the newly accepted glibc (2.31-0ubuntu9.5) for focal have finished running.
The following regressions have been reported in tests triggered by the package:

garli/2.1-3build1 (armhf)
fpc/3.0.4+dfsg-23 (armhf)
lazarus/2.0.6+dfsg-3 (armhf)
libuv1/1.34.2-1ubuntu1.3 (i386)
ikiwiki-hosting/0.20180719-2 (armhf)
rtags/2.37-1 (amd64)
mercurial/5.3.1-1ubuntu1 (amd64, ppc64el)
foo2zjs/20171202dfsg0-4 (armhf)
frameworkintegration/5.68.0-0ubuntu1 (armhf)
hilive/2.0a-3build2 (arm64)
ruby-libxml/3.1.0-2 (s390x)
plasma-framework/5.68.0-0ubuntu1 (armhf)
feersum/1.407-2 (s390x)
r-bioc-delayedarray/0.12.2+dfsg-1 (armhf)
php-luasandbox/3.0.3-2build2 (ppc64el)
snapd-glib/1.58-0ubuntu0.20.04.0 (armhf)
bolt/0.8-4ubuntu1 (ppc64el)
threadweaver/5.68.0-0ubuntu1 (armhf)
python3.8/3.8.10-0ubuntu1~20.04.2 (amd64)

Please visit the excuses page listed below and investigate the failures, proceeding afterwards as per the StableReleaseUpdates policy regarding autopkgtest regressions [1].

https://people.canonical.com/~ubuntu-archive/proposed-migration/focal/update_excuses.html#glibc

[1] https://wiki.ubuntu.com/StableReleaseUpdates#Autopkgtest_Regressions

Thank you!

Revision history for this message
Brian Murray (brian-murray) wrote : Please test proposed package

Hello Matthias, or anyone else affected,

Accepted glibc into focal-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/glibc/2.31-0ubuntu9.8 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, what testing has been performed on the package and change the tag from verification-needed-focal to verification-done-focal. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-focal. 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.

Revision history for this message
Ubuntu SRU Bot (ubuntu-sru-bot) wrote : Autopkgtest regression report (glibc/2.31-0ubuntu9.8)

All autopkgtests for the newly accepted glibc (2.31-0ubuntu9.8) for focal have finished running.
The following regressions have been reported in tests triggered by the package:

ruby-stackprof/0.2.15-2 (arm64)
sphinxbase/0.8+5prealpha+1-8 (armhf)
r-cran-ps/1.3.2-2 (s390x)
linux-hwe-5.13/5.13.0-37.42~20.04.1 (armhf)
mercurial/5.3.1-1ubuntu1 (armhf, ppc64el)
linux-hwe-5.11/5.11.0-61.61 (armhf)
mbedtls/2.16.4-1ubuntu2 (s390x)
libreoffice/1:6.4.7-0ubuntu0.20.04.4 (armhf)
ruby-ferret/0.11.8.7-2 (amd64)
cross-toolchain-base/43ubuntu3.1 (ppc64el)

Please visit the excuses page listed below and investigate the failures, proceeding afterwards as per the StableReleaseUpdates policy regarding autopkgtest regressions [1].

https://people.canonical.com/~ubuntu-archive/proposed-migration/focal/update_excuses.html#glibc

[1] https://wiki.ubuntu.com/StableReleaseUpdates#Autopkgtest_Regressions

Thank you!

Revision history for this message
Steve Langasek (vorlon) wrote : Please test proposed package

Hello Matthias, or anyone else affected,

Accepted glibc into focal-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/glibc/2.31-0ubuntu9.9 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, what testing has been performed on the package and change the tag from verification-needed-focal to verification-done-focal. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-focal. 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.

Revision history for this message
Ubuntu SRU Bot (ubuntu-sru-bot) wrote : Autopkgtest regression report (glibc/2.31-0ubuntu9.9)

All autopkgtests for the newly accepted glibc (2.31-0ubuntu9.9) for focal have finished running.
The following regressions have been reported in tests triggered by the package:

hilive/2.0a-3build2 (arm64)
tomb/2.7+dfsg2-1 (arm64)
linux-hwe-5.13/5.13.0-40.45~20.04.1 (armhf)
bali-phy/3.4.1+dfsg-2build1 (s390x, arm64)
smalt/0.7.6-9 (ppc64el)
mariadb-10.3/1:10.3.34-0ubuntu0.20.04.1 (armhf)
feersum/1.407-2 (s390x)
kopanocore/8.7.0-7ubuntu1 (amd64)
r-cran-ps/1.3.2-2 (s390x, ppc64el)
libreoffice/1:6.4.7-0ubuntu0.20.04.4 (amd64)
imagemagick/8:6.9.10.23+dfsg-2.1ubuntu11.4 (armhf)
ruby-stackprof/0.2.15-2 (amd64)
gnome-photos/3.34.1-1 (ppc64el)
linux-azure-5.11/5.11.0-1029.32~20.04.2 (amd64)
linux-intel-5.13/5.13.0-1010.10 (amd64)
php-luasandbox/3.0.3-2build2 (armhf, arm64)
mbedtls/2.16.4-1ubuntu2 (amd64, ppc64el)
cross-toolchain-base/43ubuntu3.1 (ppc64el)
rtags/2.37-1 (amd64)
gvfs/1.44.1-1ubuntu1 (arm64, ppc64el)
linux-oem-5.14/5.14.0-1033.36 (amd64)
linux-azure-cvm/5.4.0-1076.79+cvm1 (amd64)
mercurial/5.3.1-1ubuntu1 (armhf)
r-cran-satellite/1.0.2-1build1 (armhf)
s3ql/3.3.2+dfsg-1ubuntu1 (armhf)
snapd/2.54.3+20.04.1ubuntu0.2 (s390x, arm64, amd64, ppc64el)
sphinxbase/0.8+5prealpha+1-8 (armhf)
gemma/0.98.1+dfsg-1 (armhf)

Please visit the excuses page listed below and investigate the failures, proceeding afterwards as per the StableReleaseUpdates policy regarding autopkgtest regressions [1].

https://people.canonical.com/~ubuntu-archive/proposed-migration/focal/update_excuses.html#glibc

[1] https://wiki.ubuntu.com/StableReleaseUpdates#Autopkgtest_Regressions

Thank you!

Revision history for this message
Michael Hudson-Doyle (mwhudson) wrote :

Verified:

root@146e5ef6a792:/# dpkg -l libc6
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-==============-===============-============-=================================
ii libc6:armhf 2.31-0ubuntu9.9 armhf GNU C Library: Shared libraries
root@146e5ef6a792:/# file /lib/*/ld-2.31.so
/lib/arm-linux-gnueabihf/ld-2.31.so: ELF 32-bit LSB shared object, ARM, EABI5 version 1 (SYSV), dynamically linked, BuildID[sha1]=f0c9b30abd834697ef550b427b9de729d737b169, with debug_info, not stripped

root@focal-vm:~# dpkg -l libc6
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-==============-===============-============-=================================
ii libc6:amd64 2.31-0ubuntu9.9 amd64 GNU C Library: Shared libraries
root@focal-vm:~# file /lib/x86_64-linux-gnu/ld-2.31.so
/lib/x86_64-linux-gnu/ld-2.31.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=4587364908de169dec62ffa538170118c1c3a078, stripped

tags: added: verification-done-focal
removed: verification-needed verification-needed-focal
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package glibc - 2.31-0ubuntu9.9

---------------
glibc (2.31-0ubuntu9.9) focal; urgency=medium

  * Disable testsuite on riscv64. It is failing maths tests intermittently in
    ways that cannot be a glibc regression and is disabled in later series
    anyway.

glibc (2.31-0ubuntu9.8) focal; urgency=medium

  * Update for 20.04. (LP: #1951033)

  [ Balint Reczey ]
  * Cherry-pick upstream patch to fix building with -moutline-atomics
  * Prevent rare deadlock in pthread_cond_signal (LP: #1899800)

  [ Matthias Klose ]
  * Revert: Use DH_COMPAT=8 for dh_strip to fix debug sections for valgrind.
    Enables debugging ld.so related issues. (LP: #1918035)
  * Don't strip ld.so on armhf. (LP: #1927192)

  [ Gunnar Hjalmarsson ]
  * d/local/usr_sbin/update-locale: improve sanity checks. (LP: #1892825)

  [ Heitor Alves de Siqueira ]
  * d/p/u/git-lp1928508-reversing-calculation-of-__x86_shared_non_temporal.patch:
    - Fix memcpy() performance regression on x86 AMD systems (LP: #1928508)

  [ Aurelien Jarno ]
  * debian/debhelper.in/libc.preinst: drop the check for kernel release
    > 255 now that glibc and preinstall script are fixed. (LP: #1962225)

  [ Michael Hudson-Doyle ]
  * libc6 on arm64 is now built with -moutline-atomics so libc6-lse can now be
    an empty package that is safe to remove. (LP: #1912652)
  * d/patches/u/aarch64-memcpy-improvements.patch: Backport memcpy
    improvements. (LP: #1951032)
  * Add test-float64x-yn to xfails on riscv64.

 -- Michael Hudson-Doyle <email address hidden> Thu, 07 Apr 2022 13:24:41 +1200

Changed in glibc (Ubuntu Focal):
status: Fix Committed → Fix Released
Revision history for this message
In , Luis Machado (luis-gdb-machado) wrote :
Changed in gdb:
status: Incomplete → Fix Released
Revision history for this message
Luis Machado (luis-gdb-machado) wrote :

Although this has been fixed for focal (20.04), it looks like the fix wasn't applied to jammy (22.04). So we're still stripping symbols off of ld.so for armhf.

Maybe I should open a new ticket to track this?

Simon Chopin (schopin)
Changed in glibc (Ubuntu Mantic):
importance: Undecided → High
status: Fix Released → In Progress
Changed in glibc (Ubuntu Lunar):
status: New → Won't Fix
Changed in glibc (Ubuntu Kinetic):
status: New → Won't Fix
Changed in glibc (Ubuntu Jammy):
importance: Undecided → High
status: New → Triaged
Changed in gdb (Ubuntu Jammy):
status: New → Fix Released
Changed in gdb (Ubuntu Kinetic):
status: New → Fix Released
Changed in gdb (Ubuntu Lunar):
status: New → Fix Released
Changed in glibc (Ubuntu Jammy):
importance: High → Medium
Revision history for this message
Simon Chopin (schopin) wrote :

This has been re-broken in the glibc package when upstream changed the name of the actual ld.so binary, thus escaping the stripping exception.

I've fixed this in the git tree in preparation of the mantic upload. There's currently a Jammy SRU in -proposed, I won't supersede it for this fix since there's a workaround (installing the -dbg package). However, I'll make sure to include it in the next upload :).

Revision history for this message
Brian Murray (brian-murray) wrote : Please test proposed package

Hello Matthias, or anyone else affected,

Accepted glibc into jammy-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/glibc/2.35-0ubuntu3.3 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, what testing has been performed on the package and change the tag from verification-needed-jammy to verification-done-jammy. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-jammy. 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 glibc (Ubuntu Jammy):
status: Triaged → Fix Committed
tags: added: verification-needed verification-needed-jammy
Revision history for this message
Ubuntu SRU Bot (ubuntu-sru-bot) wrote : Autopkgtest regression report (glibc/2.35-0ubuntu3.3)

All autopkgtests for the newly accepted glibc (2.35-0ubuntu3.3) for jammy have finished running.
The following regressions have been reported in tests triggered by the package:

adsys/0.9.2~22.04.1 (arm64)
datefudge/1.24 (arm64)
dbus/1.12.20-2ubuntu4.1 (armhf)
dpdk/21.11.3-0ubuntu0.22.04.1 (arm64)
ganeti/3.0.2-1ubuntu1 (armhf)
gcc-9/9.5.0-1ubuntu1~22.04 (armhf)
gjs/1.72.4-0ubuntu0.22.04.1 (amd64)
golang-github-canonical-go-dqlite/1.10.1-1 (arm64)
golang-github-influxdata-tail/1.0.0+git20180327.c434825-4 (amd64)
golang-github-xenolf-lego/4.1.3-3ubuntu1.22.04.1 (armhf)
golang-gogoprotobuf/1.3.2-1 (amd64, s390x)
google-osconfig-agent/20230504.00-0ubuntu1~22.04.0 (armhf)
gvfs/1.48.2-0ubuntu1 (amd64)
hilive/2.0a-3build3 (arm64)
hyphy/2.5.36+dfsg-1 (amd64)
kmediaplayer/5.92.0-0ubuntu1 (armhf)
libclass-methodmaker-perl/2.24-2build2 (armhf)
libflame/5.2.0-3ubuntu3 (arm64)
libimage-sane-perl/5-1build3 (s390x)
libuev/2.4.0-1.1 (s390x)
linux-aws-6.2/6.2.0-1009.9~22.04.2 (arm64)
linux-azure-5.19/5.19.0-1027.30~22.04.2 (arm64)
linux-azure-6.2/6.2.0-1009.9~22.04.2 (arm64)
linux-gcp-5.19/5.19.0-1030.32~22.04.1 (arm64)
linux-gke/5.15.0-1039.44 (arm64)
linux-hwe-5.19/5.19.0-50.50 (arm64)
linux-lowlatency/5.15.0-79.88 (arm64)
linux-nvidia-6.2/6.2.0-1006.6~22.04.2 (arm64)
linux-nvidia-tegra/5.15.0-1015.15 (arm64)
linux-oem-5.17/5.17.0-1035.36 (amd64)
linux-oracle-5.19/5.19.0-1027.30 (arm64)
linux-xilinx-zynqmp/5.15.0-1023.27 (arm64)
log4cxx/0.12.1-4 (armhf)
netplan.io/0.105-0ubuntu2~22.04.3 (arm64)
notcurses/3.0.6+dfsg.1-1 (armhf)
php-luasandbox/4.0.2-3build1 (ppc64el)
prometheus/2.31.2+ds1-1ubuntu1.22.04.2 (s390x)
qcustomplot/2.0.1+dfsg1-5 (armhf)
r-cran-mice/3.14.0-1 (armhf)
r-cran-randomfields/3.3.14-1 (armhf)
r-cran-sys/3.4-1 (s390x)
ruby-rblineprof/0.3.7-2build3 (arm64)
rustc/1.66.1+dfsg0ubuntu1-0ubuntu0.22.04.1 (arm64)
samba/2:4.15.13+dfsg-0ubuntu1.2 (s390x)
stunnel4/3:5.63-1build1 (ppc64el)
swtpm/0.6.3-0ubuntu3.2 (arm64)
tmux/3.2a-4ubuntu0.2 (ppc64el)

Please visit the excuses page listed below and investigate the failures, proceeding afterwards as per the StableReleaseUpdates policy regarding autopkgtest regressions [1].

https://people.canonical.com/~ubuntu-archive/proposed-migration/jammy/update_excuses.html#glibc

[1] https://wiki.ubuntu.com/StableReleaseUpdates#Autopkgtest_Regressions

Thank you!

Revision history for this message
Matthias Klose (doko) wrote :

fixed in the SRU

tags: added: verification-done verification-done-jammy
removed: verification-needed verification-needed-jammy
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package glibc - 2.35-0ubuntu3.3

---------------
glibc (2.35-0ubuntu3.3) jammy; urgency=medium

  * Drop SVE patches due to kernal-related performance regression
  * Fix the armhf stripping exception for ld.so (LP: #1927192)

glibc (2.35-0ubuntu3.2) jammy; urgency=medium

  * d/rules.d/debhelper.mk: fix permissions of libc.so (LP: #1989082)
  * Cherry-picks from upstream:
    - d/p/lp1999551/*: arm64 memcpy optimization (LP: #1999551)
    - d/p/lp1995362*.patch: Fix ldd segfault with missing libs (LP: #1995362)
    - d/p/lp2007796*: Fix missing cancellation point in pthread (LP: #2007796)
    - d/p/lp2007599*: add new tunables for s390x (LP: #2007599)
    - d/p/lp2011421/*: Fix crash on TDX-enabled platforms (LP: #2011421)
    - d/p/lp1992159*: Fix socket.h headers for non-GNU compilers (LP: #1992159)

 -- Simon Chopin <email address hidden> Wed, 26 Jul 2023 10:27:54 +0200

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

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.