[Bug 1066445] Re: apt-get crashed with SIGSEGV in pkgCacheGenerator::ListParser::NewProvides()

Colin Watson cjwatson at canonical.com
Sun Oct 14 23:32:36 UTC 2012


Seems to have been introduced in, er, I think somewhere between lucid
and natty but I would need to be rather more awake to trace the full
history.  It's probably not worth SRUing this back very far, but it
would be helpful to at least put the fix in precise.

** Also affects: apt (Ubuntu Precise)
   Importance: Undecided
       Status: New

** Changed in: apt (Ubuntu Precise)
       Status: New => Triaged

** Changed in: apt (Ubuntu Precise)
   Importance: Undecided => High

** Changed in: apt (Ubuntu Precise)
     Assignee: (unassigned) => Colin Watson (cjwatson)

** Changed in: apt (Ubuntu Precise)
    Milestone: None => ubuntu-12.04.2

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to apt in Ubuntu.
https://bugs.launchpad.net/bugs/1066445

Title:
  apt-get crashed with SIGSEGV in
  pkgCacheGenerator::ListParser::NewProvides()

Status in Release Notes for Ubuntu:
  Invalid
Status in Release Notes for Ubuntu quantal series:
  Triaged
Status in “apt” package in Ubuntu:
  Fix Committed
Status in “apt” source package in Precise:
  Triaged
Status in “apt” source package in Quantal:
  Fix Committed
Status in “apt” package in Debian:
  Unknown

Bug description:
  Starting today, most apt operations started crashing to the extent
  that I can't even run ubuntu-bug apt. rm -f /var/lib/apt/* does not
  help either, or switching from a mirror to main archive. The crash
  happens in apt-get update when reading package lists after they have
  been downloaded.

  TEST CASE:
  1. Press shift on boot to display the boot menu
  2. Press F6 and select the option 'Free software only'
  3. Continue with a default installation
  4. At the end of the installation reboot
  5. Login and run 'apt-get update'

  ALTERNATIVE TEST CASE:
  1. Copy the file sources.list attached to this report (https://bugs.launchpad.net/ubuntu/+source/apt/+bug/1066445/+attachment/3398341/+files/sources.list) to /etc/apt/ on an existing system (backup the exiting file first!)
  2. Run 'apt-get update'

  ACTUAL RESULT
  apt will crash with the trace below

  StacktraceTop:
   pkgCacheGenerator::ListParser::NewProvides (this=0x7ffffeba7910, Ver=..., PkgName=..., PkgArch=..., Version=...) at pkgcachegen.cc:920
   debListParser::NewProvidesAllArch (this=this at entry=0x7ffffeba7910, Ver=..., Package=..., Version=...) at deb/deblistparser.cc:722
   debListParser::ParseProvides (this=this at entry=0x7ffffeba7910, Ver=...) at deb/deblistparser.cc:711
   debListParser::NewVersion (this=0x7ffffeba7910, Ver=...) at deb/deblistparser.cc:171
   pkgCacheGenerator::MergeListVersion (this=this at entry=0x7ffffeba84a0, List=..., Pkg=..., Version=..., OutVer=@0x7ffffeba75e8: 0x0) at pkgcachegen.cc:388

  ===

  gdb apt-get upgrade gives (and update crash at package list reading
  looks identical):

  #0  0x00007ffff7b4dd20 in pkgCacheGenerator::ListParser::NewProvides(pkgCache::VerIterator&, std::string const&, std::string const&, std::string const&) ()
     from /usr/lib/x86_64-linux-gnu/libapt-pkg.so.4.12
  #1  0x00007ffff7b864d1 in debListParser::NewProvidesAllArch(pkgCache::VerIterator&, std::string const&, std::string const&) ()
     from /usr/lib/x86_64-linux-gnu/libapt-pkg.so.4.12
  #2  0x00007ffff7b883e3 in debListParser::ParseProvides(pkgCache::VerIterator&)
      () from /usr/lib/x86_64-linux-gnu/libapt-pkg.so.4.12
  #3  0x00007ffff7b8902c in debListParser::NewVersion(pkgCache::VerIterator&) ()
     from /usr/lib/x86_64-linux-gnu/libapt-pkg.so.4.12
  #4  0x00007ffff7b4c458 in pkgCacheGenerator::MergeListVersion(pkgCacheGenerator::ListParser&, pkgCache::PkgIterator&, std::string const&, pkgCache::VerIterator*&) () from /usr/lib/x86_64-linux-gnu/libapt-pkg.so.4.12
  #5  0x00007ffff7b4d6a3 in pkgCacheGenerator::MergeList(pkgCacheGenerator::ListParser&, pkgCache::VerIterator*) ()
     from /usr/lib/x86_64-linux-gnu/libapt-pkg.so.4.12
  #6  0x00007ffff7ba173a in debPackagesIndex::Merge(pkgCacheGenerator&, OpProgress*) const () from /usr/lib/x86_64-linux-gnu/libapt-pkg.so.4.12
  #7  0x00007ffff7b46632 in ?? ()
     from /usr/lib/x86_64-linux-gnu/libapt-pkg.so.4.12
  #8  0x00007ffff7b49409 in pkgCacheGenerator::MakeStatusCache(pkgSourceList&, OpProgress*, MMap**, bool) () from /usr/lib/x86_64-linux-gnu/libapt-pkg.so.4.12
  #9  0x00007ffff7b400c1 in pkgCacheFile::BuildCaches(OpProgress*, bool) ()
     from /usr/lib/x86_64-linux-gnu/libapt-pkg.so.4.12
  #10 0x00007ffff7b4045c in pkgCacheFile::Open(OpProgress*, bool) ()
     from /usr/lib/x86_64-linux-gnu/libapt-pkg.so.4.12
  #11 0x000000000042113c in ?? ()
  #12 0x00000000004160a3 in ?? ()
  #13 0x00007ffff7afa562 in CommandLine::DispatchArg(CommandLine::Dispatch*, bool) () from /usr/lib/x86_64-linux-gnu/libapt-pkg.so.4.12
  #14 0x000000000040a2ac in ?? ()
  #15 0x00007ffff720276d in __libc_start_main (main=0x40a070, argc=2,
      ubp_av=0x7fffffffe328, init=<optimized out>, fini=<optimized out>,
      rtld_fini=<optimized out>, stack_end=0x7fffffffe318) at libc-start.c:226
  #16 0x000000000040a591 in ?? ()
  #17 0x00007fffffffe318 in ?? ()
  #18 0x000000000000001c in ?? ()
  #19 0x0000000000000002 in ?? ()
  #20 0x00007fffffffe60c in ?? ()
  #21 0x00007fffffffe61d in ?? ()
  #22 0x0000000000000000 in ?? ()

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu-release-notes/+bug/1066445/+subscriptions




More information about the foundations-bugs mailing list