[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#751169: libc6: Segmentation fault during libc upgrade, leaving system very unstable



Package: libc6
Severity: important

Dear Maintainer,

Whenever I upgrade either elibc or gcc, my system enters a state where
almost all software segmentation faults, including the upgrade itself. 
This happens repeatably on any upgrade of either of those packages,
and has done for some time. I finally managed to capture a trace of
the upgrade in progress which is why I am filing this report now.

I have attached the output of both the upgrade output and my subsequent
repair. There are 3 phases: the original upgrade, the first pass at
repair (using dpkg), and finally the second pass at repair, which is
exactly the same command as the first pass, but works completely.

If I run dpkg -i with the list of packages seen (libc6:amd64,
libc6:i386,libgcc:amd64,libgcc:i386) then the system becomes usable
again. In this case, and very often when I do this repair, I have
to run it twice to actually get the "repair" to stick.

It appears the problem is when libc is deconfigured for upgrade. libgcc
stops functioning (it depends on libc, obviously) and the segmentation
fault means dpkg is unable to recover (I guess one of the configure
scripts is failing).

I suspect the problem is somehow related to multi-arch, since it seems
that multiarch is causing one side to deconfigure, breaking that side
and then creating a dependency conflict situation.

I am only filing this as important because obviously it breaks my system
but it is recoverable. The non-existence of others reporting this makes
me wonder if there isn't something weird, however, I have two machines
and both exhibit the same symptoms.

-- System Information:
Debian Release: jessie/sid
  APT prefers unstable
  APT policy: (501, 'unstable'), (500, 'stable'), (399, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.14-1-amd64 (SMP w/8 CPU cores)
Locale: LANG=en_CA.UTF-8, LC_CTYPE=en_CA.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Phase 1: the original upgrade.

Extracting templates from packages: 100%
Preconfiguring packages ...
(Reading database ... 313318 files and directories currently installed.)
Preparing to unpack .../locales_2.19-1_all.deb ...
Unpacking locales (2.19-1) over (2.18-7) ...
Preparing to unpack .../archives/libc6_2.19-1_i386.deb ...
De-configuring libc6:amd64 (2.18-7) ...
Checking for services that may need to be restarted...
Checking init scripts...
Unpacking libc6:i386 (2.19-1) over (2.18-7) ...
Preparing to unpack .../libc6_2.19-1_amd64.deb ...
dpkg: error processing archive /var/cache/apt/archives/libc6_2.19-1_amd64.deb (--unpack):
 subprocess new pre-installation script was killed by signal (Segmentation fault)
Preparing to unpack .../libgcc1_1%3a4.9.0-6_i386.deb ...
De-configuring libgcc1:amd64 (1:4.9.0-5) ...
Unpacking libgcc1:i386 (1:4.9.0-6) over (1:4.9.0-5) ...
Preparing to unpack .../libgcc1_1%3a4.9.0-6_amd64.deb ...
Unpacking libgcc1:amd64 (1:4.9.0-6) over (1:4.9.0-5) ...
Preparing to unpack .../gcc-4.9-base_4.9.0-6_i386.deb ...
De-configuring gcc-4.9-base:amd64 (4.9.0-5) ...
Unpacking gcc-4.9-base:i386 (4.9.0-6) over (4.9.0-5) ...
Preparing to unpack .../gcc-4.9-base_4.9.0-6_amd64.deb ...
Unpacking gcc-4.9-base:amd64 (4.9.0-6) over (4.9.0-5) ...
Processing triggers for man-db (2.6.7.1-1) ...
dpkg: error processing package man-db (--unpack):
 subprocess installed post-installation script was killed by signal (Segmentation fault)
Errors were encountered while processing:
 /var/cache/apt/archives/libc6_2.19-1_amd64.deb
 man-db
E: Sub-process /usr/bin/dpkg returned an error code (1)
A package failed to install.  Trying to recover:
Setting up man-db (2.6.7.1-1) ...
dpkg: error processing package man-db (--configure):
 subprocess installed post-installation script was killed by signal (Segmentation fault)
dpkg: dependency problems prevent configuration of locales:
 locales depends on glibc-2.19-1; however:
  Package glibc-2.19-1 is not installed.

dpkg: error processing package locales (--configure):
 dependency problems - leaving unconfigured
Setting up gcc-4.9-base:amd64 (4.9.0-6) ...
Setting up gcc-4.9-base:i386 (4.9.0-6) ...
dpkg: error processing package libc6:i386 (--configure):
 package libc6:i386 2.19-1 cannot be configured because libc6:amd64 is at a different version (2.18-7)
Setting up libgcc1:amd64 (1:4.9.0-6) ...
dpkg: dependency problems prevent configuration of libgcc1:i386:
 libgcc1:i386 depends on libc6 (>= 2.2.4); however:
  Package libc6:i386 is not configured yet.

dpkg: error processing package libgcc1:i386 (--configure):
 dependency problems - leaving unconfigured
Processing triggers for libc-bin (2.18-7) ...
Errors were encountered while processing:
 man-db
 locales
 libc6:i386
 libgcc1:i386


Phase 2: repair attempt #1

dpkg -i /var/cache/apt/archives/libc6_2.19-1_i386.deb /var/cache/apt/archives/libc6-i686_2.19-1_i386.deb /var/cache/apt/archives/libc6_2.19-1_amd64.deb /var/cache/apt/archives/libgcc1_1%3a4.9.0-6_i386.deb /var/cache/apt/archives/libgcc1_1%3a4.9.0-6_amd64.deb

(Reading database ... 313330 files and directories currently installed.)
Preparing to unpack .../archives/libc6_2.19-1_i386.deb ...
De-configuring libc6:amd64 (2.18-7) ...
Unpacking libc6:i386 (2.19-1) over (2.19-1) ...
dpkg: regarding .../libc6-i686_2.19-1_i386.deb containing libc6-i686:i386, pre-dependency problem:
 libc6-i686:i386 pre-depends on libc6 (= 2.19-1)
  libc6:i386 latest configured version is 2.18-7.

dpkg: error processing archive /var/cache/apt/archives/libc6-i686_2.19-1_i386.deb (--install):
 pre-dependency problem - not installing libc6-i686:i386
Preparing to unpack .../libc6_2.19-1_amd64.deb ...
Checking for services that may need to be restarted...
Checking init scripts...
Unpacking libc6:amd64 (2.19-1) over (2.18-7) ...
Preparing to unpack .../libgcc1_1%3a4.9.0-6_i386.deb ...
Unpacking libgcc1:i386 (1:4.9.0-6) over (1:4.9.0-6) ...
Preparing to unpack .../libgcc1_1%3a4.9.0-6_amd64.deb ...
Unpacking libgcc1:amd64 (1:4.9.0-6) over (1:4.9.0-6) ...
More than one copy of package libc6:amd64 has been unpacked
 in this run !  Only configuring it once.
Setting up libc6:i386 (2.19-1) ...
Checking for services that may need to be restarted...
Checking init scripts...

Restarting services possibly affected by the upgrade:
  exim4: restarting...done.
  cups: restarting...done.
  cron: restarting...done.
  atd: restarting...done.

Services restarted successfully.
Setting up libc6:amd64 (2.19-1) ...
Checking for services that may need to be restarted...
Checking init scripts...

Restarting services possibly affected by the upgrade:
  exim4: restarting...done.
  cups: restarting...done.
  cron: restarting...done.
  atd: restarting...done.

Services restarted successfully.
Setting up libgcc1:i386 (1:4.9.0-6) ...
Setting up libgcc1:amd64 (1:4.9.0-6) ...
Processing triggers for libc-bin (2.18-7) ...
Errors were encountered while processing:
 /var/cache/apt/archives/libc6-i686_2.19-1_i386.deb

Phase 3: repair complete

(Reading database ... 313330 files and directories currently installed.)
Preparing to unpack .../archives/libc6_2.19-1_i386.deb ...
Unpacking libc6:i386 (2.19-1) over (2.19-1) ...
Preparing to unpack .../libc6-i686_2.19-1_i386.deb ...
Unpacking libc6-i686:i386 (2.19-1) over (2.18-7) ...
Preparing to unpack .../libc6_2.19-1_amd64.deb ...
Unpacking libc6:amd64 (2.19-1) over (2.19-1) ...
Preparing to unpack .../libgcc1_1%3a4.9.0-6_i386.deb ...
Unpacking libgcc1:i386 (1:4.9.0-6) over (1:4.9.0-6) ...
Preparing to unpack .../libgcc1_1%3a4.9.0-6_amd64.deb ...
Unpacking libgcc1:amd64 (1:4.9.0-6) over (1:4.9.0-6) ...
Setting up libgcc1:amd64 (1:4.9.0-6) ...
Setting up libc6:i386 (2.19-1) ...
Setting up libc6-i686:i386 (2.19-1) ...
Setting up libc6:amd64 (2.19-1) ...
Setting up libgcc1:i386 (1:4.9.0-6) ...
Processing triggers for libc-bin (2.18-7) ...


Reply to: