Reverting the s390 jmp_buf/ucontext_t ABI change
Florian Weimer
fweimer@redhat.com
Fri Aug 1 07:11:00 GMT 2014
On 08/01/2014 08:50 AM, Dan Horák wrote:
> I'm the main person behind Fedora for s390x and I have some objections
> regarding this change. We had to cope with the breakage in 2.19 early
> this year, it took some time to realize what's wrong and we found a
> solution how to make it work. After some rebootstrapping work we have
> used the planned mass rebuild to clean everything. Due some nasty gcc
> 4.9 bugs the rebuild on s390 finishes during these days. And you are
> telling we should do it again? Sorry, but it is not possible, there is
> only one mass rebuild planned in Fedora per release and now it's also
> too late when we are approaching Fedora 21 Alpha deadline.
For the benefit of those reading along: s390 is a secondary architecture
in Fedora, which means that its release engineering is decoupled from
the primary architectures (which are i386, x86_64, armhfp). However,
all builds on secondary architectures exactly reproduce the builds on
primary architectures, both in terms of source code and installed build
dependencies in the build root. As a result, a mass rebuild on a
secondary architecture (with the proper tooling, see below) is only
possible if it happens on primary architectures as well.
I wonder if another mass rebuild will be scheduled on the primary
architectures to make sure that everything is built with a fixed GCC
because PR61801 seems to affect a lot of programs using inline assembly
(not just glibc).
> Fortunately I
> still have the notes for the rebootstrap, so it can be done again (for
> Fedora 22), but not now.
It should be considerably easier if you start with Fedora 20 because the
ABIs are fully compatible. In fact, if you revert the koji-shadow
database to its Fedora 20 state, and the mass rebuild in primary
happens, it should be mostly automatic. You could do the same for the
Fedora 22 bring-up, but due to the larger jump in versions, problematic
packages with tightly versioned cyclic build dependencies are more
likely to break.
This could perform a mass rebuild on s390x for Fedora 21 even without
one on primary, but it will result in RPM packages with the same
name/epoch/version/release/architecture which implement different ABIs,
which is rather undesirable.
--
Florian Weimer / Red Hat Product Security
More information about the Libc-alpha
mailing list