[Bug 1911142] Re: sord segfaults on s390x / ppc64el - related to gcc-10.2 optimizations
Launchpad Bug Tracker
1911142 at bugs.launchpad.net
Tue Jan 12 17:40:28 UTC 2021
This bug was fixed in the package sord - 0.16.6-1ubuntu1
---------------
sord (0.16.6-1ubuntu1) hirsute; urgency=medium
* d/p/0001-Fix-crash-with-optimized-builds-with-GCC-10.1.0.patch
avoid crashes with optimized builds. Those were especially present
on s390x/ppc64el around gstreamer (LP: #1911142)
-- Christian Ehrhardt <christian.ehrhardt at canonical.com> Tue, 12 Jan
2021 12:33:51 +0100
** Changed in: sord (Ubuntu)
Status: In Progress => Fix Released
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to gcc-10 in Ubuntu.
https://bugs.launchpad.net/bugs/1911142
Title:
sord segfaults on s390x / ppc64el - related to gcc-10.2 optimizations
Status in gcc-10 package in Ubuntu:
Invalid
Status in sord package in Ubuntu:
Fix Released
Bug description:
Sord has issues on these platforms if built with a recent toolchain.
I reported it upstream as I got good workarounds but failed to spot the root cause.
See: https://gitlab.com/drobilla/sord/-/issues/1
The effect in Ubuntu is that packages using sort can segfault on free.
Currently this blocks https://launchpad.net/ubuntu/+source/gst-plugins-bad1.0/1.18.2-1ubuntu2
as it runs:
$ /usr/lib/s390x-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-codec-info-1.0 debian/gstreamer1.0-plugins-bad/usr/lib/s390x-linux-gnu/gstreamer-1.0/libgstlv2.so
That segfaults then.
I've found that it works:
- with gcc-9
- on x86/armhf/arm64/riscv64
- with -fno-schedule-insns -fno-schedule-insns2 set
This could be either gcc-10 being too aggressive or (more likely) an issue in sord that is hard to see and not triggered up to now, but exposed by the new optimizations.
I'll file this against sord (to track the mitigation upload, as well as any discussion and point to upstream) as well as gcc-10 (since we have seen a bunch of those 'fails due to new toolchain') in case there is something in the toolchain to fix.
Steps to reproduce in Hirsute-proposed
$ sudo apt install gstreamer1.0-plugins-bad libgstreamer1.0-dev
$ /usr/lib/powerpc64le-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-codec-info-1.0 /usr/lib/powerpc64le-linux-gnu/gstreamer-1.0/libgstlv2.so
gst-codec-info-1.0: ../src/zix/btree.c:716: zix_btree_get: Assertion `frame->node' failed.
Aborted (core dumped)
In the upstream bug I outlined how to (re)compile sord as needed for any experiments.
=> https://gitlab.com/drobilla/sord/-/issues/1
A Test PPA which had various iterations of trying to be surgical with
the change (well, more surgical than global -O1) is at:
https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/4392
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/gcc-10/+bug/1911142/+subscriptions
More information about the foundations-bugs
mailing list