Segmentation faults in libapt-pkg.so.4.12.0

Bug #1445436 reported by Ken Sharp on 2015-04-17
62
This bug affects 11 people
Affects Status Importance Assigned to Milestone
Linux Mint
Undecided
Unassigned
apt (Debian)
Fix Released
Unknown
apt (Ubuntu)
High
Unassigned
Trusty
High
Unassigned

Bug Description

For no obvious reason whatsoever it is now completely impossible for me to use APT. Furthermore it is completely impossible for me to report a bug with apport.

apport-gtk[4025]: segfault at aca04d24 ip b4b622f1 sp aebe7240 error 6 in libapt-pkg.so.4.12.0[b4a8c000+125000]
apt-get[4087]: segfault at b58bed24 ip b768c2f1 sp bfc6d800 error 6 in libapt-pkg.so.4.12.0[b75b6000+125000]
apt-cache[4827]: segfault at b58fbd24 ip b76c82f1 sp bfc7ece0 error 6 in libapt-pkg.so.4.12.0[b75f2000+125000]
apport-gtk[4886]: segfault at ab92fd24 ip b4b8d2f1 sp b46d4240 error 6 in libapt-pkg.so.4.12.0[b4ab7000+125000]
apt-get[4929]: segfault at b5953d24 ip b77212f1 sp bfb75f40 error 6 in libapt-pkg.so.4.12.0[b764b000+125000]
apt-get[5110]: segfault at b58c9d24 ip b7697281 sp bf9cf750 error 6 in libapt-pkg.so.4.12.0[b75c1000+125000]
apt-get[5258]: segfault at b58f0d24 ip b76bd281 sp bfa1fe40 error 6 in libapt-pkg.so.4.12.0[b75e7000+125000]
apt-get[5381]: segfault at b58bad24 ip b7687281 sp bfdaf300 error 6 in libapt-pkg.so.4.12.0[b75b1000+125000]
apt-get[5991]: segfault at b595ed24 ip b772c281 sp bff062a0 error 6 in libapt-pkg.so.4.12.0[b7656000+125000]
apt-get[6104]: segfault at b5982d24 ip b7750281 sp bfdbeee0 error 6 in libapt-pkg.so.4.12.0[b767a000+125000]
apt-get[6279]: segfault at b597dd24 ip b774b281 sp bfab9600 error 6 in libapt-pkg.so.4.12.0[b7675000+125000]
apt-get[6814]: segfault at b58b4d24 ip b7682281 sp bfb1efe0 error 6 in libapt-pkg.so.4.12.0[b75ac000+125000]

I have tried reinstalling libapt-pkg4.12_0.8.16~exp12ubuntu10.21_i386.deb but nothing changes.

Last upgrade log:

Start-Date: 2015-04-15 00:39:51
Commandline: /usr/bin/apt-get dist-upgrade
Upgrade: libsdl1.2debian:i386 (1.2.14-6.4ubuntu3, 1.2.14-6.4ubuntu3.1), libxfixes3:i386 (5.0-4ubuntu4.3, 5.0-4ubuntu4.4), libx11-data:i386 (1.4.99.1-0ubuntu2.2, 1.4.99.1-0ubuntu2.3), libxi-dev:i386 (1.7.1.901-1ubuntu1~precise2, 1.7.1.901-1ubuntu1~precise3), libxrender-dev:i386 (0.9.6-2ubuntu0.1, 0.9.6-2ubuntu0.2), libx11-xcb1:i386 (1.4.99.1-0ubuntu2.2, 1.4.99.1-0ubuntu2.3), x11proto-core-dev:i386 (7.0.22-1ubuntu0.1, 7.0.22-1ubuntu0.2), libxext-dev:i386 (1.3.0-3ubuntu0.1, 1.3.0-3ubuntu0.2), xserver-xorg-video-vmware:i386 (12.0.1-1ubuntu1.1, 12.0.1-1ubuntu1.2), libxrender1:i386 (0.9.6-2ubuntu0.1, 0.9.6-2ubuntu0.2), libxrandr-dev:i386 (1.3.2-2ubuntu0.2, 1.3.2-2ubuntu0.3), libx11-6:i386 (1.4.99.1-0ubuntu2.2, 1.4.99.1-0ubuntu2.3), ntpdate:i386 (4.2.6.p3+dfsg-1ubuntu3.3, 4.2.6.p3+dfsg-1ubuntu3.4), libx11-dev:i386 (1.4.99.1-0ubuntu2.2, 1.4.99.1-0ubuntu2.3), libx11-doc:i386 (1.4.99.1-0ubuntu2.2, 1.4.99.1-0ubuntu2.3), libxfixes-dev:i386 (5.0-4ubuntu4.3, 5.0-4ubuntu4.4), libxi6:i386 (1.7.1.901-1ubuntu1~precise2, 1.7.1.901-1ubuntu1~precise3), libxp6:i386 (1.0.1-2ubuntu0.12.04.1, 1.0.1-2ubuntu0.12.04.2), libxv1:i386 (1.0.6-2ubuntu0.1, 1.0.6-2ubuntu0.2), libxext6:i386 (1.3.0-3ubuntu0.1, 1.3.0-3ubuntu0.2), libxrandr2:i386 (1.3.2-2ubuntu0.2, 1.3.2-2ubuntu0.3)
End-Date: 2015-04-15 00:40:43

Clearing the entire archive including *.bin* files didn't work.
http://askubuntu.com/a/14552/170177

Increasing or disabling the cache limit made no difference.
https://aziest.wordpress.com/2011/01/24/how-to-increase-your-apt-cache-limit/

Still looking and will update.
---
ApportVersion: 2.0.1-0ubuntu17.8
Architecture: i386
DistroRelease: Ubuntu 12.04
MarkForUpload: True
NonfreeKernelModules: nvidia
Package: apt 0.8.16~exp12ubuntu10.23
PackageArchitecture: i386
ProcEnviron:
 LANGUAGE=en_GB:en
 TERM=xterm
 PATH=(custom, no user)
 LANG=en_GB.UTF-8
 SHELL=/bin/bash
ProcVersionSignature: Ubuntu 3.11.0-26.45~precise1-generic 3.11.10.12
Tags: precise package-from-proposed
Uname: Linux 3.11.0-26-generic i686
UpgradeStatus: Upgraded to precise on 2014-12-07 (130 days ago)
UserGroups: adm admin audio cdrom debian-tor dialout dip fax floppy fuse lp lpadmin plugdev sambashare scanner tape video

Ken Sharp (kennybobs) wrote :
Ken Sharp (kennybobs) wrote :
Ken Sharp (kennybobs) wrote :

APT::Cache-start 200000000;

This works around the issue. I don't understand why I need to tell APT to allocate more than the default amount of memory to stop it segfaulting, but I do! There's a bug here somewhere.

The only change to the system that I can think of is that I have added netprio_cgroup to /etc/modules but that shouldn't make any difference.

tags: added: i386

apport information

tags: added: apport-collected package-from-proposed
description: updated
Ken Sharp (kennybobs) wrote :

....evidently apport will also now work with this workaround.

zerbob (zerbugug) wrote :

I am affected as well. I'm using Linux Mint 17 on a 64-bit laptop. For me the error came immediately (or after downloading for apt-get update) and gave the following message :

       Segmentation fault
       E: Problem executing scripts APT::Update::Post-Invoke-Success 'test -x /usr/bin/apt-show-versions || exit 0 ; apt-show-versions -i'
       E: Sub-process returned an error code

I used the debugger to determine that the offending line in apt-show-versions was line 55 :

    my $cache = AptPkg::Cache->new;

The fix provided above worked. Deleting any files in /var didn't.

Ken Sharp (kennybobs) wrote :

Then please mark this bug as affecting you.

Changed in apt (Ubuntu):
status: New → Confirmed
tags: added: amd64
Alessandro Peppino (ap21193) wrote :

Starting from yesterday I was affected as well.
Ubuntu 14.04 (Trusty Tahr).
[ 1038.128029] apt-get[11829]: segfault at b6fe6a84 ip b767932f sp bfb951c0 error 6 in libapt-pkg.so.4.12.0[b758c000+144000]
Synaptic , APT, update-manager were not working
adding APT::Cache-start 200000000; in /etc/apt/apt.conf.d/00bugs solved the problem

I reviewed the changes I made to the system yesterday: I saw in synaptic history
balazarbrothers
libode1
libode1sp
python-soya
I removed all these packages
Then I removed /etc/apt/apt.conf.d/00bugs, I rebooted and I did not get the error in APT.
It seemed to me very strange that removing balazarbrothers, libode1, libode1sp, and python-soya could solve the problem but I tired to reinstall these 4 packages but the error did not show up again.
All this seems to me strange and I don't know if what I did can help to understand the problem anyway that is what I did.

Julian Andres Klode (juliank) wrote :

This bug report is missing a complete stack trace and can thus not be analysed further.

Changed in apt (Ubuntu):
status: Confirmed → Incomplete
Ken Sharp (kennybobs) wrote :

So offer somebody a clue how to proceed. It's not a user's fault that the bug reporting facility is inadequate.

Ken Sharp (kennybobs) on 2015-10-08
Changed in apt (Ubuntu):
status: Incomplete → New
status: New → Confirmed

This bug is definitely alive and well in the wild; I encountered it today on my Linux Mint 17.2 + MATE install.
Key Sharp's workaround did the trick, but it definitely shouldn't bomb out of the box like that.
If someone can tell me what they'd like in terms of reporting, I can easily provide it.
Strangely enough, this only is affecting my Toshiba laptop - my custom PC with a very similar install is unaffected.

Ken Sharp (kennybobs) wrote :

To add to the above comment: indeed, it isn't all systems that are affected. I have multiple systems here and only some are affected. TylerStyle's previous acknowledgement attests to this.

And in case some wally claims, again, that the bug report is lacking I will reiterate this *very clearly stated* point:

"Furthermore it is completely impossible for me to report a bug with apport."

apport clearly relies on this lib.

Changed in linuxmint:
status: New → Confirmed
Vlad Orlov (monsta) on 2015-10-22
tags: added: trusty
Vlad Orlov (monsta) wrote :

Hi David, Julian, and Michael (hope the subscription worked as it should),

I couldn't find any -dbg package for apt or libapt-pkg, so I couldn't obtain the full backtrace. Nevertheless, what I've got via gdb showed me that the issue is the same as it was in Debian [1]. David's commit [2] which fixed the problem for apt 1.0.5 also applies cleanly in Trusty's apt 1.0.1ubuntu2.10, and it fixes the problem here as well.

So please push it to Trusty.

[1] https://bugs.debian.org/753941
[2] http://anonscm.debian.org/cgit/apt/apt.git/commit?id=4ea471ecb013d188d03a5c3efb9b21e58ef56065

Vlad Orlov (monsta) wrote :

For the record, attaching the backtrace from apt-cache crash.

Changed in apt (Debian):
status: Unknown → Fix Released
Chris (eggert-ehmke) wrote :

I can confirm that this bug applies for Mint 17.2 and that the workaround provided by Ken works.

Vlad Orlov (monsta) wrote :

Hi David, Julian, and Michael,

Is there any progress on this for Trusty?
(Mint 17.x users would benefit from the fix as well.)

Hello Ken, or anyone else affected,

Accepted apt into trusty-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/apt/1.0.1ubuntu2.12 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 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, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in apt (Ubuntu Trusty):
status: New → Fix Committed
tags: added: verification-needed
Mathew Hodson (mathew-hodson) wrote :

According to the Debian bug, this was fixed in apt 1.0.6, so this should be fixed in later Ubuntu releases.

Changed in apt (Ubuntu Trusty):
importance: Undecided → High
Changed in apt (Ubuntu):
importance: Undecided → High
status: Confirmed → Fix Released
Vlad Orlov (monsta) wrote :

Tested the proposed version 1.0.1ubuntu2.12 in Mint 17.3 (which is based on Trusty and uses apt package as is, from Trusty repos).
All works fine and no workaround with APT::Cache-start required anymore.

Just in case, I'll wait for Trusty users to report as well.

Vlad Orlov (monsta) wrote :

Ok, installed Xubuntu 14.04 and tested it there as well. APT works fine.

tags: added: verification-done
removed: verification-needed
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package apt - 1.0.1ubuntu2.12

---------------
apt (1.0.1ubuntu2.12) trusty; urgency=medium

  [ Colin Watson ]
  * Fix lzma write support to handle "try again" case (closes: #751688,
    LP: #1553770).

  [ David Kalnischkies ]
  * Handle moved mmap after UniqFindTagWrite call (closes: #753941,
    LP: #1445436).

 -- Colin Watson <email address hidden> Sun, 06 Mar 2016 19:01:04 +0000

Changed in apt (Ubuntu Trusty):
status: Fix Committed → Fix Released

The verification of the Stable Release Update for apt has completed successfully and the package has now been 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.

Vlad Orlov (monsta) wrote :

Thanks guys!

Changed in linuxmint:
status: Confirmed → Fix Released
gkforcare (gerke-forcare) wrote :

1.0.1ubuntu2.12 cause this problem again, after I installed version 1.0.1ubuntu2.13 from http://security.ubuntu.com/ubuntu/pool/main/a/apt/, it all worked again.

When I downgraded again to 1.0.1ubuntu2.12, it still worked... Maybe a configuration problem?

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Remote bug watches

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