update-manager crashed with SIGSEGV in debListParser::LoadReleaseInfo()
Affects | Status | Importance | Assigned to | Milestone | ||
---|---|---|---|---|---|---|
| apt (Ubuntu) |
Medium
|
Unassigned | |||
| Precise |
Medium
|
Colin Watson | |||
| Saucy |
High
|
Unassigned | |||
| Trusty |
Medium
|
Unassigned | |||
update-manager (Ubuntu) | ||||||
| Trusty |
Undecided
|
Unassigned |
Bug Description
just would not complete the update
ProblemType: Crash
DistroRelease: Ubuntu 12.04
Package: update-manager 1:0.156.8
ProcVersionSign
Uname: Linux 3.2.0-18-generic x86_64
NonfreeKernelMo
ApportVersion: 1.94.1-0ubuntu2
Architecture: amd64
Date: Fri Mar 16 17:46:18 2012
ExecutablePath: /usr/bin/
GsettingsChanges:
com.ubuntu.
com.ubuntu.
com.ubuntu.
com.ubuntu.
com.ubuntu.
InstallationMedia: Ubuntu 12.04 LTS "Precise Pangolin" - Alpha amd64 (20120201.2)
InterpreterPath: /usr/bin/python2.7
PackageArchitec
ProcCmdline: /usr/bin/python /usr/bin/
ProcEnviron:
SHELL=/bin/bash
LANGUAGE=en_GB:en
LANG=en_GB.UTF-8
SegvAnalysis:
Segfault happened at: 0x7f4c9838a019 <_ZN13debListPa
PC (0x7f4c9838a019) ok
source "%eax" ok
destination "0x14(%rbx)" (0x7f4c7bfea5c4) not located in a known VMA region (needed writable region)!
SegvReason: writing unknown VMA
Signal: 11
SourcePackage: update-manager
StacktraceTop:
debListParser:
debPackagesInd
?? () from /usr/lib/
pkgCacheGenera
pkgCacheFile:
Title: update-manager crashed with SIGSEGV in debListParser:
UpgradeStatus: Upgraded to precise on 2012-03-07 (8 days ago)
UserGroups: adm audio avahi avahi-autoipd backup bin bluetooth cdrom clamav colord couchdb crontab daemon dialout dip disk fax floppy fuse games gdm gnats kmem libuuid lightdm list lp lpadmin mail man messagebus mlocate netdev news ntp operator plugdev proxy pulse pulse-access root rtkit sambashare saned sasl scanner shadow src ssh ssl-cert staff sudo sys syslog tape tty users utempter utmp uucp vboxusers video voice whoopsie www-data
Related branches
cliff tinker (cliff5555) wrote : | #1 |
Apport retracing service (apport) wrote : | #2 |
Changed in update-manager (Ubuntu): | |
importance: | Undecided → Medium |
tags: | removed: need-amd64-retrace |
Launchpad Janitor (janitor) wrote : | #5 |
Status changed to 'Confirmed' because the bug affects multiple users.
Changed in update-manager (Ubuntu): | |
status: | New → Confirmed |
tags: | added: raring |
information type: | Private → Public |
affects: | update-manager (Ubuntu) → apt (Ubuntu) |
Colin Watson (cjwatson) wrote : | #6 |
The failing line of code is:
case Origin: FileI->Origin = WriteUniqString
I suspect this might be a problem with the complex C++ gadgets that handle writing into apt's cache, but it's hard to tell. I further suspect that this is quite strongly dependent on things like the exact set of archives you have active. Could people affected by this please attach a tarball of /etc/apt/, in particular including sources.list and sources.list.d/*?
Changed in apt (Ubuntu): | |
status: | Confirmed → Triaged |
David Kalnischkies (donkult) wrote : | #7 |
Colin is right, its about remapping. WriteUniqString() can cause the underlying data storage to move. FileI is registered to be rewritten to accommodate the move, but the compiler already has the address calculated so the rewrite of FileI is too late.
The line must be split into
map_ptrloc foobar = WriteUniqString
FileI->Origin = foobar;
to work properly.
You want to backport rev. 2219.1.8 which fixes this line and a few siblings. There might be more as it was pretty hard and equally dull task to allow the storage to move arround (to fix the "mmap ran out of room") so I overlooked quiet a few cases which were uncovered over the year(s). I haven't seen any segfault with trunk for a while so I hope we finally have found everything, which usually means its the right time to introduce new bugs ;)
And for the record: Most of the time you not only need the sources but the exact same files as with a earlier/later version of the index files its likely that the content has changed causing the remap to happen earlier/later (if at all) so that this line works and might fail at another (or works because other places deal correctly with it).
KALImar Franklin (kalimar999) wrote : Re: [Bug 957231] Re: update-manager crashed with SIGSEGV in debListParser::LoadReleaseInfo() | #8 |
Colin, I hope this helps..See Attachements
On Wed, Apr 3, 2013 at 10:36 AM, Colin Watson <email address hidden>wrote:
> The failing line of code is:
>
> case Origin: FileI->Origin = WriteUniqString
>
> I suspect this might be a problem with the complex C++ gadgets that
> handle writing into apt's cache, but it's hard to tell. I further
> suspect that this is quite strongly dependent on things like the exact
> set of archives you have active. Could people affected by this please
> attach a tarball of /etc/apt/, in particular including sources.list and
> sources.list.d/*?
>
> ** Changed in: apt (Ubuntu)
> Status: Confirmed => Triaged
>
> --
> You received this bug notification because you are subscribed to a
> duplicate bug report (1145193).
> https:/
>
> Title:
> update-manager crashed with SIGSEGV in
> debListParser:
>
> Status in “apt” package in Ubuntu:
> Triaged
>
> Bug description:
> just would not complete the update
>
> ProblemType: Crash
> DistroRelease: Ubuntu 12.04
> Package: update-manager 1:0.156.8
> ProcVersionSign
> Uname: Linux 3.2.0-18-generic x86_64
> NonfreeKernelMo
> ApportVersion: 1.94.1-0ubuntu2
> Architecture: amd64
> Date: Fri Mar 16 17:46:18 2012
> ExecutablePath: /usr/bin/
> GsettingsChanges:
> com.ubuntu.
> com.ubuntu.
> com.ubuntu.
> com.ubuntu.
> com.ubuntu.
> InstallationMedia: Ubuntu 12.04 LTS "Precise Pangolin" - Alpha amd64
> (20120201.2)
> InterpreterPath: /usr/bin/python2.7
> PackageArchitec
> ProcCmdline: /usr/bin/python /usr/bin/
> ProcEnviron:
> SHELL=/bin/bash
> LANGUAGE=en_GB:en
> LANG=en_GB.UTF-8
> SegvAnalysis:
> Segfault happened at: 0x7f4c9838a019
> <_ZN13debListPa
> mov %eax,0x14(%rbx)
> PC (0x7f4c9838a019) ok
> source "%eax" ok
> destination "0x14(%rbx)" (0x7f4c7bfea5c4) not located in a known VMA
> region (needed writable region)!
> SegvReason: writing unknown VMA
> Signal: 11
> SourcePackage: update-manager
> StacktraceTop:
> debListParser:
> std::string) () from /usr/lib/
> debPackagesInde
> /usr/lib/
> ?? () from /usr/lib/
> pkgCacheGenerat
> bool) () from /usr/lib/
> pkgCacheFile:
> /usr/lib/
> Title: update-manager crashed with SIGSEGV in
> debListParser:
> UpgradeStatus: Upgraded to precise on 2012-03-07 (8 days ago)
> UserGroups: adm audio avahi avahi-autoipd backup bin bluetooth cdrom
> clamav colord ...
Brian Murray (brian-murray) wrote : | #9 |
Looking at the Ubuntu Error Tracker we can see that this is still occurring (https:/
tags: | added: saucy |
tags: | added: bugpattern-needed |
Brian Murray (brian-murray) wrote : | #10 |
This seems to be a recurrence of bug 854090 which doesn't seem to have actually been fixed.
Saikrishna Arcot (saiarcot895) wrote : | #11 |
My sources, as requested.
Launchpad Janitor (janitor) wrote : | #12 |
Status changed to 'Confirmed' because the bug affects multiple users.
Changed in update-manager (Ubuntu): | |
status: | New → Confirmed |
no longer affects: | update-manager (Ubuntu) |
Michael Vogt (mvo) wrote : | #13 |
This sounds like its worthwhile to SRU the attached apt diff from commit 2b803d4069e1f05
Changed in apt (Ubuntu Trusty): | |
status: | Triaged → Fix Released |
Changed in update-manager (Ubuntu Trusty): | |
status: | Confirmed → Invalid |
Brian Murray (brian-murray) wrote : | #14 |
This issue is much more prevalent on Saucy than on Precise.
92k crashes reported on Saucy vs
3k crashes reported on Precise
Changed in apt (Ubuntu Saucy): | |
importance: | Undecided → High |
status: | New → Triaged |
Changed in apt (Ubuntu Precise): | |
status: | New → Triaged |
importance: | Undecided → Medium |
Olivier Bilodeau (plaxx) wrote : | #15 |
Any update on the SRU for Precise?
Changed in apt (Ubuntu Saucy): | |
status: | Triaged → Won't Fix |
Colin Watson (cjwatson) wrote : | #16 |
This also caused some Landscape private PPA builds to segfault mysteriously. After tracking it down to this bug, I've uploaded an SRU, currently awaiting review. That should also provide a useful test case.
Changed in apt (Ubuntu Precise): | |
assignee: | nobody → Colin Watson (cjwatson) |
Changed in apt (Ubuntu Precise): | |
status: | Triaged → In Progress |
Hello cliff, or anyone else affected,
Accepted apt into precise-proposed. The package will build now and be available at https:/
Please help us by testing this new package. See https:/
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-
Further information regarding the verification process can be found at https:/
Changed in apt (Ubuntu Precise): | |
status: | In Progress → Fix Committed |
tags: | added: verification-needed |
Colin Watson (cjwatson) wrote : | #18 |
Unfortunately, despite my best efforts, my reproduction case went away - I think due to changes in the PPA in question. They may actually have enabled -proposed to get them out of the hole they were stuck in, but I can't tell directly. I've done some basic regression testing on the new version of apt (apt-get update, apt-get dist-upgrade, apt-get install debhelper), and it seems to be behaving itself.
tags: |
added: verification-done removed: verification-needed |
Andreas Hasenack (ahasenack) wrote : | #19 |
Hm, I didn't enable proposed for that ppa. There was no need, because only i386 builds were affected and we use amd64. I can confirm new i386 builds worked, but with no action on my part.
Colin Watson (cjwatson) wrote : | #20 |
Only i386 builds were affected, but that included all Architecture: all builds. Peculiar. My best speculation is that perhaps a change in precise-updates was enough to perturb away the apt bug, but then that allowed the PPA to also change so that now even a combination of precise-updates at the time of the breakage plus the current state of the PPA isn't enough to reproduce the problem. That sort of thing is, unfortunately, quite usual for this kind of subtle apt bug.
Launchpad Janitor (janitor) wrote : | #21 |
This bug was fixed in the package apt - 0.8.16~
---------------
apt (0.8.16~
* Backport patches from David Kalnischkies to fix crashes with dynamic
cache remapping (LP: #957231):
- Do not dereference the storage for the unique strings as the pointer
can change at the time of writing the strings, so first store it
temporary and then save the index in the (possibly new) pointer
location
- Handle moved mmap after UniqFindTagWrite call (Closes: #753941)
-- Colin Watson <email address hidden> Wed, 22 Jul 2015 13:16:37 +0100
Changed in apt (Ubuntu Precise): | |
status: | Fix Committed → Fix Released |
Adam Conrad (adconrad) wrote : Update Released | #22 |
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.
StacktraceTop: :LoadReleaseInf o (this=0x7fff774 659b0, FileI=..., File=<optimized out>, component= <optimized out>) at deb/deblistpars er.cc:865 ex::Merge (this=0x3584970, Gen=..., Prog=<optimized out>) at deb/debindexfil e.cc:343 0x7fff77466a60, CurrentSize= @0x7fff77466980 , TotalSize=93041015, Start=..., End=...) at pkgcachegen.cc:1173 tor::MakeStatus Cache (List=<optimized out>, Progress= 0x7fff77466a60, OutMap=0x35533c0, AllowMem=8) at pkgcachegen.cc:1364 :BuildCaches (this=0x35533b0, Progress= 0x7fff77466a60, WithLock=<optimized out>) at cachefile.cc:83
debListParser:
debPackagesInd
BuildCache (Gen=..., Progress=
pkgCacheGenera
pkgCacheFile: