Bug#987497: libc-bin: Enabling Static PIE support on arm64 libc breaks qemu bootstrapping
Package: libc-bin
Version: 2.31-11
Severity: important
X-Debbugs-Cc: randall@mason.ch
Dear Maintainer,
* What led up to the situation?
I run a CI build of images for my raspberry pi with the upstream
kernel and debian userspace. I use qemu-debootstrap. At some point
the builds stopped working for bullseye and sid. The host of the
qemu-debootstrap is either Ubuntu 18.04 or 20.04, the only debian
based options on Github Actions.
* What exactly did you do (or not do) that was effective (or
ineffective)?
I ended up pinning the build to snapshot 20210103T144403Z as that
works on both bullseye and sid. On first boot I use cloud-init to
update packages if connected to network.
* What was the outcome of this action?
I'm no longer getting up to date debian when I load a new image on
my Raspberry Pi. If networking is down on first boot, I'm stuck
at an old version of debian.
* What outcome did you expect instead?
I'd hope to be able to continue building bulleye and sid images.
I did a bisect using snapshot and the last working version was that
snapshot and the only change to base debootstrap packages was updating
from libc 2.31-6 for both bullseye and sid. I tested sid, as there are
more versions between 6 and 11 released and it broke immediately on
2.31-7. Looking at the changelog I would guess that it's
https://salsa.debian.org/glibc-team/glibc/-/commit/ac2dc2a2df164509bfa35b2e8181606510baa123
that broke the qemu-debootstrap. Here are some example segfaults:
When bootstrapping from latest repos:
I: Running command: chroot /mnt /debootstrap/debootstrap --second-stage
W: Failure trying to run: /sbin/ldconfig
W: See //debootstrap/debootstrap.log for details
(https://github.com/ClashTheBunny/Debian64Pi/runs/2315280346?check_suite_focus=true#step:3:795)
When bootstrapping from the above snapshot and then upgrading during
the bootstrap:
Preparing to unpack .../libc-bin_2.31-11_arm64.deb ...
Unpacking libc-bin (2.31-11) over (2.31-6) ...
Setting up libc-bin (2.31-11) ...
qemu: uncaught target signal 11 (Segmentation fault) - core dumped
Segmentation fault (core dumped)
qemu: uncaught target signal 11 (Segmentation fault) - core dumped
Segmentation fault (core dumped)
dpkg: error processing package libc-bin (--configure):
installed libc-bin package post-installation script subprocess
returned error exit status 139
Errors were encountered while processing:
libc-bin
E: Sub-process /usr/bin/dpkg returned an error code (1)
(https://github.com/ClashTheBunny/Debian64Pi/runs/2315453978?check_suite_focus=true#step:3:2564)
Thanks for taking a look!
-- System Information:
Debian Release: bullseye/sid
APT prefers testing
APT policy: (500, 'testing')
Architecture: arm64 (aarch64)
Kernel: Linux 5.10.17-v8+ (SMP w/4 CPU threads; PREEMPT)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_CRAP, TAINT_OOT_MODULE
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
Versions of packages libc-bin depends on:
ii libc6 2.31-11
Versions of packages libc-bin recommends:
ii manpages 5.10-1
libc-bin suggests no packages.
-- no debconf information
Reply to: