Bug#723636: [apt] apt segfault in pkgDepCache::SetCandidateVersion(pkgCache::VerIterator) ()
Package: apt
Version: 0.9.12.1
Followup-For: Bug #723636
Dear Maintainer,
I just ran into this same segfault while running "apt-get install jitsi/unstable". I hope the backtrace is of any use.
-- apt-config dump --
APT "";
APT::Architecture "amd64";
APT::Build-Essential "";
APT::Build-Essential:: "build-essential";
APT::Install-Recommends "1";
APT::Install-Suggests "0";
APT::NeverAutoRemove "";
APT::NeverAutoRemove:: "^firmware-linux.*";
APT::NeverAutoRemove:: "^linux-firmware$";
APT::NeverAutoRemove:: "^kfreebsd-image.*";
APT::NeverAutoRemove:: "^gnumach$";
APT::NeverAutoRemove:: "^gnumach-image.*";
APT::NeverAutoRemove:: "^linux-image-3.10-3-amd64$";
APT::NeverAutoRemove:: "^linux-image-extra-3.10-3-amd64$";
APT::NeverAutoRemove:: "^linux-signed-image-3.10-3-amd64$";
APT::NeverAutoRemove:: "^linux-backports-modules-.*-3.10-3-amd64$";
APT::NeverAutoRemove:: "^linux-headers-3.10-3-amd64$";
APT::Never-MarkAuto-Sections "";
APT::Never-MarkAuto-Sections:: "metapackages";
APT::Never-MarkAuto-Sections:: "restricted/metapackages";
APT::Never-MarkAuto-Sections:: "universe/metapackages";
APT::Never-MarkAuto-Sections:: "multiverse/metapackages";
APT::Never-MarkAuto-Sections:: "oldlibs";
APT::Never-MarkAuto-Sections:: "restricted/oldlibs";
APT::Never-MarkAuto-Sections:: "universe/oldlibs";
APT::Never-MarkAuto-Sections:: "multiverse/oldlibs";
APT::Update "";
APT::Update::Post-Invoke-Success "";
APT::Update::Post-Invoke-Success:: "/usr/bin/test -e /usr/share/dbus-1/system-services/org.freedesktop.PackageKit.service && /usr/bin/test -S /var/run/dbus/system_bus_socket && /usr/bin/gdbus call --system --dest org.freedesktop.PackageKit --object-path /org/freedesktop/PackageKit --timeout 1 --method org.freedesktop.PackageKit.StateHasChanged cache-update > /dev/null; /bin/echo > /dev/null";
APT::Architectures "";
APT::Architectures:: "amd64";
APT::Compressor "";
APT::Compressor::. "";
APT::Compressor::.::Name ".";
APT::Compressor::.::Extension "";
APT::Compressor::.::Binary "";
APT::Compressor::.::Cost "1";
APT::Compressor::gzip "";
APT::Compressor::gzip::Name "gzip";
APT::Compressor::gzip::Extension ".gz";
APT::Compressor::gzip::Binary "gzip";
APT::Compressor::gzip::Cost "2";
APT::Compressor::gzip::CompressArg "";
APT::Compressor::gzip::CompressArg:: "-9n";
APT::Compressor::gzip::UncompressArg "";
APT::Compressor::gzip::UncompressArg:: "-d";
APT::Compressor::bzip2 "";
APT::Compressor::bzip2::Name "bzip2";
APT::Compressor::bzip2::Extension ".bz2";
APT::Compressor::bzip2::Binary "bzip2";
APT::Compressor::bzip2::Cost "3";
APT::Compressor::bzip2::CompressArg "";
APT::Compressor::bzip2::CompressArg:: "-9";
APT::Compressor::bzip2::UncompressArg "";
APT::Compressor::bzip2::UncompressArg:: "-d";
APT::Compressor::xz "";
APT::Compressor::xz::Name "xz";
APT::Compressor::xz::Extension ".xz";
APT::Compressor::xz::Binary "xz";
APT::Compressor::xz::Cost "4";
APT::Compressor::xz::CompressArg "";
APT::Compressor::xz::CompressArg:: "-6";
APT::Compressor::xz::UncompressArg "";
APT::Compressor::xz::UncompressArg:: "-d";
APT::Compressor::lzma "";
APT::Compressor::lzma::Name "lzma";
APT::Compressor::lzma::Extension ".lzma";
APT::Compressor::lzma::Binary "xz";
APT::Compressor::lzma::Cost "5";
APT::Compressor::lzma::CompressArg "";
APT::Compressor::lzma::CompressArg:: "--format=lzma";
APT::Compressor::lzma::CompressArg:: "-9";
APT::Compressor::lzma::UncompressArg "";
APT::Compressor::lzma::UncompressArg:: "--format=lzma";
APT::Compressor::lzma::UncompressArg:: "-d";
APT::Compressor::::Name "";
APT::Compressor::::Extension ".";
APT::Compressor::::Binary "";
APT::Compressor::::Cost "100";
APT::Compressor::::CompressArg "";
APT::Compressor::::CompressArg:: "-9";
APT::Compressor::::UncompressArg "";
APT::Compressor::::UncompressArg:: "-d";
Dir "/";
Dir::State "var/lib/apt/";
Dir::State::lists "lists/";
Dir::State::cdroms "cdroms.list";
Dir::State::mirrors "mirrors/";
Dir::State::extended_states "extended_states";
Dir::State::status "/var/lib/dpkg/status";
Dir::Cache "var/cache/apt/";
Dir::Cache::archives "archives/";
Dir::Cache::srcpkgcache "srcpkgcache.bin";
Dir::Cache::pkgcache "pkgcache.bin";
Dir::Etc "etc/apt/";
Dir::Etc::sourcelist "sources.list";
Dir::Etc::sourceparts "sources.list.d";
Dir::Etc::vendorlist "vendors.list";
Dir::Etc::vendorparts "vendors.list.d";
Dir::Etc::main "apt.conf";
Dir::Etc::netrc "auth.conf";
Dir::Etc::parts "apt.conf.d";
Dir::Etc::preferences "preferences";
Dir::Etc::preferencesparts "preferences.d";
Dir::Etc::trusted "trusted.gpg";
Dir::Etc::trustedparts "trusted.gpg.d";
Dir::Bin "";
Dir::Bin::methods "/usr/lib/apt/methods";
Dir::Bin::solvers "";
Dir::Bin::solvers:: "/usr/lib/apt/solvers";
Dir::Bin::dpkg "/usr/bin/dpkg";
Dir::Bin::bzip2 "/bin/bzip2";
Dir::Bin::xz "/usr/bin/xz";
Dir::Bin::lzma "/usr/bin/xz";
Dir::Media "";
Dir::Media::MountPath "/media/apt";
Dir::Log "var/log/apt";
Dir::Log::Terminal "term.log";
Dir::Log::History "history.log";
Dir::Ignore-Files-Silently "";
Dir::Ignore-Files-Silently:: "~$";
Dir::Ignore-Files-Silently:: "\.disabled$";
Dir::Ignore-Files-Silently:: "\.bak$";
Dir::Ignore-Files-Silently:: "\.dpkg-[a-z]+$";
Dir::Ignore-Files-Silently:: "\.save$";
Dir::Ignore-Files-Silently:: "\.orig$";
Acquire "";
Acquire::cdrom "";
Acquire::cdrom::mount "/media/cdrom/";
Acquire::Languages "";
Acquire::Languages:: "en";
Acquire::Languages:: "none";
DPkg "";
DPkg::Post-Invoke "";
DPkg::Post-Invoke:: "/usr/bin/test -e /usr/share/dbus-1/system-services/org.freedesktop.PackageKit.service && /usr/bin/test -S /var/run/dbus/system_bus_socket && /usr/bin/gdbus call --system --dest org.freedesktop.PackageKit --object-path /org/freedesktop/PackageKit --timeout 1 --method org.freedesktop.PackageKit.StateHasChanged cache-update > /dev/null; /bin/echo > /dev/null";
DPkg::Pre-Install-Pkgs "";
DPkg::Pre-Install-Pkgs:: "/usr/sbin/dpkg-preconfigure --apt || true";
CommandLine "";
CommandLine::AsString "apt-config dump";
-- (no /etc/apt/preferences present) --
-- /etc/apt/sources.list --
deb http://ftp.nl.debian.org/debian jessie main
deb-src http://ftp.nl.debian.org/debian jessie main
deb http://ftp.nl.debian.org/debian unstable main
-- System Information:
Debian Release: jessie/sid
APT prefers testing
APT policy: (900, 'testing')
Architecture: amd64 (x86_64)
Kernel: Linux 3.10-3-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages apt depends on:
ii debian-archive-keyring 2012.4
ii gnupg 1.4.15-1.1
ii libapt-pkg4.12 0.9.12.1
ii libc6 2.17-93
ii libgcc1 1:4.8.2-1
ii libstdc++6 4.8.2-1
apt recommends no packages.
Versions of packages apt suggests:
pn apt-doc <none>
ii aptitude 0.6.8.2-1.2
ii dpkg-dev 1.16.12
ii python-apt 0.9.1
ii synaptic 0.80.4
ii xz-utils 5.1.1alpha+20120614-2
-- no debconf information
GNU gdb (GDB) 7.6.1 (Debian 7.6.1-1)
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/bin/apt-get...(no debugging symbols found)...done.
(gdb) handle SIG33 pass nostop noprint
Signal Stop Print Pass to program Description
SIG33 No No Yes Real-time event 33
(gdb) set pagination 0
(gdb) run install jitsi/unstable
Starting program: /usr/bin/apt-get install jitsi/unstable
warning: no loadable sections found in added symbol-file system-supplied DSO at 0x7ffff7ffa000
warning: Could not load shared library symbols for linux-vdso.so.1.
Do you need "set solib-search-path" or "set sysroot"?
Reading package lists...
Building dependency tree...
Reading state information...
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff7af8f52 in pkgDepCache::SetCandidateVersion(pkgCache::VerIterator) () from /usr/lib/x86_64-linux-gnu/libapt-pkg.so.4.12
(gdb) backtrace full
#0 0x00007ffff7af8f52 in pkgDepCache::SetCandidateVersion(pkgCache::VerIterator) () from /usr/lib/x86_64-linux-gnu/libapt-pkg.so.4.12
No symbol table info available.
#1 0x00007ffff7afc986 in pkgDepCache::SetCandidateRelease(pkgCache::VerIterator, std::string const&, std::list<std::pair<pkgCache::VerIterator, pkgCache::VerIterator>, std::allocator<std::pair<pkgCache::VerIterator, pkgCache::VerIterator> > >&) () from /usr/lib/x86_64-linux-gnu/libapt-pkg.so.4.12
No symbol table info available.
#2 0x00007ffff786d05b in DoCacheManipulationFromCommandLine(CommandLine&, CacheFile&, std::map<unsigned short, APT::VersionContainer<std::set<pkgCache::VerIterator, std::less<pkgCache::VerIterator>, std::allocator<pkgCache::VerIterator> > >, std::less<unsigned short>, std::allocator<std::pair<unsigned short const, APT::VersionContainer<std::set<pkgCache::VerIterator, std::less<pkgCache::VerIterator>, std::allocator<pkgCache::VerIterator> > > > > >&) () from /usr/lib/x86_64-linux-gnu/libapt-private.so.0.0
No symbol table info available.
#3 0x00007ffff786f94c in DoInstall(CommandLine&) () from /usr/lib/x86_64-linux-gnu/libapt-private.so.0.0
No symbol table info available.
#4 0x00007ffff7addb52 in CommandLine::DispatchArg(CommandLine::Dispatch*, bool) () from /usr/lib/x86_64-linux-gnu/libapt-pkg.so.4.12
No symbol table info available.
#5 0x0000000000409a55 in ?? ()
No symbol table info available.
#6 0x00007ffff6cb4995 in __libc_start_main (main=0x409870, argc=3, ubp_av=0x7fffffffe6f8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffe6e8) at libc-start.c:260
result = <optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {0, 1698232974086444854, 4234182, 140737488348912, 0, 0, -1698232973812885706, -1698217205463967946}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x41a360, 0x7fffffffe6f8}, data = {prev = 0x0, cleanup = 0x0, canceltype = 4301664}}}
not_first_call = <optimized out>
#7 0x0000000000409bef in ?? ()
No symbol table info available.
(gdb) info registers
rax 0x7ffffa02b460 140737387869280
rbx 0x6211c0 6427072
rcx 0x7ffff4c2b000 140737299787776
rdx 0x6211d0 6427088
rsi 0xc000a0 12583072
rdi 0x62b060 6467680
rbp 0x7fffffffd9d0 0x7fffffffd9d0
rsp 0x7fffffffd840 0x7fffffffd840
r8 0x7ffff5489c60 140737308564576
r9 0x0 0
r10 0x0 0
r11 0x75 117
r12 0x62b060 6467680
r13 0x7ffff4c2b000 140737299787776
r14 0x41cbf0 4312048
r15 0x41cc30 4312112
rip 0x7ffff7af8f52 0x7ffff7af8f52 <pkgDepCache::SetCandidateVersion(pkgCache::VerIterator)+98>
eflags 0x10206 [ PF IF RF ]
cs 0x33 51
ss 0x2b 43
ds 0x0 0
es 0x0 0
fs 0x0 0
gs 0x0 0
(gdb) x/16i $pc
=> 0x7ffff7af8f52 <_ZN11pkgDepCache19SetCandidateVersionEN8pkgCache11VerIteratorE+98>: mov 0x28(%rax),%eax
0x7ffff7af8f55 <_ZN11pkgDepCache19SetCandidateVersionEN8pkgCache11VerIteratorE+101>: mov %rbp,%rdi
0x7ffff7af8f58 <_ZN11pkgDepCache19SetCandidateVersionEN8pkgCache11VerIteratorE+104>: lea (%rax,%rax,2),%rbx
0x7ffff7af8f5c <_ZN11pkgDepCache19SetCandidateVersionEN8pkgCache11VerIteratorE+108>: mov 0x0(%rbp),%rax
0x7ffff7af8f60 <_ZN11pkgDepCache19SetCandidateVersionEN8pkgCache11VerIteratorE+112>: shl $0x4,%rbx
0x7ffff7af8f64 <_ZN11pkgDepCache19SetCandidateVersionEN8pkgCache11VerIteratorE+116>: add 0x18(%r12),%rbx
0x7ffff7af8f69 <_ZN11pkgDepCache19SetCandidateVersionEN8pkgCache11VerIteratorE+121>: mov 0x10(%rbx),%r14
0x7ffff7af8f6d <_ZN11pkgDepCache19SetCandidateVersionEN8pkgCache11VerIteratorE+125>: callq *(%rax)
0x7ffff7af8f6f <_ZN11pkgDepCache19SetCandidateVersionEN8pkgCache11VerIteratorE+127>: cmp %rax,%r13
0x7ffff7af8f72 <_ZN11pkgDepCache19SetCandidateVersionEN8pkgCache11VerIteratorE+130>: je 0x7ffff7af9070 <_ZN11pkgDepCache19SetCandidateVersionEN8pkgCache11VerIteratorE+384>
0x7ffff7af8f78 <_ZN11pkgDepCache19SetCandidateVersionEN8pkgCache11VerIteratorE+136>: mov 0x8(%rbp),%rax
0x7ffff7af8f7c <_ZN11pkgDepCache19SetCandidateVersionEN8pkgCache11VerIteratorE+140>: cmp %rax,%r14
0x7ffff7af8f7f <_ZN11pkgDepCache19SetCandidateVersionEN8pkgCache11VerIteratorE+143>: je 0x7ffff7af9051 <_ZN11pkgDepCache19SetCandidateVersionEN8pkgCache11VerIteratorE+353>
0x7ffff7af8f85 <_ZN11pkgDepCache19SetCandidateVersionEN8pkgCache11VerIteratorE+149>: lea 0x10(%rsp),%r13
0x7ffff7af8f8a <_ZN11pkgDepCache19SetCandidateVersionEN8pkgCache11VerIteratorE+154>: mov %r12,%rsi
0x7ffff7af8f8d <_ZN11pkgDepCache19SetCandidateVersionEN8pkgCache11VerIteratorE+157>: mov %rsp,%rdi
(gdb) thread apply all backtrace
Thread 1 (process 26738):
#0 0x00007ffff7af8f52 in pkgDepCache::SetCandidateVersion(pkgCache::VerIterator) () from /usr/lib/x86_64-linux-gnu/libapt-pkg.so.4.12
#1 0x00007ffff7afc986 in pkgDepCache::SetCandidateRelease(pkgCache::VerIterator, std::string const&, std::list<std::pair<pkgCache::VerIterator, pkgCache::VerIterator>, std::allocator<std::pair<pkgCache::VerIterator, pkgCache::VerIterator> > >&) () from /usr/lib/x86_64-linux-gnu/libapt-pkg.so.4.12
#2 0x00007ffff786d05b in DoCacheManipulationFromCommandLine(CommandLine&, CacheFile&, std::map<unsigned short, APT::VersionContainer<std::set<pkgCache::VerIterator, std::less<pkgCache::VerIterator>, std::allocator<pkgCache::VerIterator> > >, std::less<unsigned short>, std::allocator<std::pair<unsigned short const, APT::VersionContainer<std::set<pkgCache::VerIterator, std::less<pkgCache::VerIterator>, std::allocator<pkgCache::VerIterator> > > > > >&) () from /usr/lib/x86_64-linux-gnu/libapt-private.so.0.0
#3 0x00007ffff786f94c in DoInstall(CommandLine&) () from /usr/lib/x86_64-linux-gnu/libapt-private.so.0.0
#4 0x00007ffff7addb52 in CommandLine::DispatchArg(CommandLine::Dispatch*, bool) () from /usr/lib/x86_64-linux-gnu/libapt-pkg.so.4.12
#5 0x0000000000409a55 in ?? ()
#6 0x00007ffff6cb4995 in __libc_start_main (main=0x409870, argc=3, ubp_av=0x7fffffffe6f8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffe6e8) at libc-start.c:260
#7 0x0000000000409bef in ?? ()
(gdb) quit
A debugging session is active.
Inferior 1 [process 26738] will be killed.
Quit anyway? (y or n)
Reply to: