[Aptitude-devel] Bug#1122172: aptitude: SIGSEGV in infer_reason after udev could not be updated because of unsatisfied dependencies
Alex Riesen
alexander.riesen at cetitec.com
Mon Dec 8 10:49:07 GMT 2025
Subject: aptitude: SIGSEGV in infer_reason after udev could not be updated because of unsatisfied dependencies
Package: aptitude
Version: 0.8.13-7
Severity: normal
Dear Maintainer,
*** Reporter, please consider answering these questions, where appropriate ***
* What led up to the situation?
The package udev failed to update automatically after selecting an update its
dependent libraries (libudev-dev). The update also selected libudev1, which
was resolved for update successfully.
* What exactly did you do (or not do) that was effective (or
ineffective)?
Unfortunately, I am not sure about the exact sequence of events, and I am not
sure I can reproduce it easily. I managed to reproduce it twice though (out of
dozen attempts), even once in GDB.
After selecting the libudev-dev for update (with '+' shortcut), and seeing a
broken update of 'udev', I pressed 'g' and closed the dialog window with the
"[ Close ]" button. In the next screen, selected the 'udev' and just move the
cursor line down and perhaps up with the arrow keys. At some point aptitude
crashed.
* What was the outcome of this action?
Crash.
* What outcome did you expect instead?
No crash.
I managed to get aptitude running in GDB with inferior ttyredirected to
another terminal (which was made available with TIOCNOTTY).
Attaching the full stack trace and screenshot at the moment of crash.
Short stack trace:
Thread 1 "aptitude" received signal SIGSEGV, Segmentation fault.
infer_reason (pkg=..., reasons=std::set with 0 elements) at ../../../../src/generic/apt/infer_reason.cc:167
warning: 167 ../../../../src/generic/apt/infer_reason.cc: No such file or directory
(gdb) bt
#0 infer_reason (pkg=..., reasons=std::set with 0 elements) at ../../../../src/generic/apt/infer_reason.cc:167
#1 0x00005555556b534e in reason_fragment (pkg=..., breakage=@0x7fffffffce77: false) at ../../src/reason_fragment.cc:447
#2 0x00005555556ae20e in info_area_multiplex::set_package (this=0x55556834ae10, pkg=..., ver=...) at ../../src/pkg_view.cc:454
#3 0x0000555555686801 in sigc::internal::signal_emit2<void, pkgCache::PkgIterator const&, pkgCache::VerIterator const&, sigc::nil>::emit (
impl=0x555562533260, _A_a1=..., _A_a2=...) at /usr/include/sigc++-2.0/sigc++/signal.h:1300
#4 0x0000555555685b8d in sigc::signal2<void, pkgCache::PkgIterator const&, pkgCache::VerIterator const&, sigc::nil>::emit (
this=<optimized out>, _A_a1=..., _A_a2=...) at /usr/include/sigc++-2.0/sigc++/signal.h:3123
#5 sigc::signal2<void, pkgCache::PkgIterator const&, pkgCache::VerIterator const&, sigc::nil>::operator() (this=<optimized out>, _A_a1=...,
_A_a2=...) at /usr/include/sigc++-2.0/sigc++/signal.h:3139
#6 pkg_item::do_highlighted_changed (this=<optimized out>, highlighted=<optimized out>) at ../../src/pkg_item.cc:115
#7 0x000055555563b22d in sigc::internal::signal_emit1<void, bool, sigc::nil>::emit (impl=0x55556839f420, _A_a1=@0x7fffffffd110: true)
at /usr/include/sigc++-2.0/sigc++/signal.h:1045
#8 0x00007ffff7bcad7e in cwidget::widgets::tree::line_down() () from /lib/x86_64-linux-gnu/libcwidget.so.4
#9 0x00007ffff7bd0c28 in cwidget::widgets::tree::handle_key(cwidget::config::key const&) () from /lib/x86_64-linux-gnu/libcwidget.so.4
#10 0x00007ffff7bd328d in cwidget::widgets::widget::dispatch_key(cwidget::config::key const&) () from /lib/x86_64-linux-gnu/libcwidget.so.4
#11 0x00007ffff7bbafbd in cwidget::widgets::table::handle_key(cwidget::config::key const&) () from /lib/x86_64-linux-gnu/libcwidget.so.4
#12 0x00007ffff7bd328d in cwidget::widgets::widget::dispatch_key(cwidget::config::key const&) () from /lib/x86_64-linux-gnu/libcwidget.so.4
#13 0x00007ffff7bb355f in cwidget::widgets::passthrough::handle_key(cwidget::config::key const&) ()
from /lib/x86_64-linux-gnu/libcwidget.so.4
#14 0x00007ffff7bd328d in cwidget::widgets::widget::dispatch_key(cwidget::config::key const&) () from /lib/x86_64-linux-gnu/libcwidget.so.4
#15 0x00007ffff7bbafbd in cwidget::widgets::table::handle_key(cwidget::config::key const&) () from /lib/x86_64-linux-gnu/libcwidget.so.4
#16 0x00007ffff7bd328d in cwidget::widgets::widget::dispatch_key(cwidget::config::key const&) () from /lib/x86_64-linux-gnu/libcwidget.so.4
#17 0x00007ffff7bb355f in cwidget::widgets::passthrough::handle_key(cwidget::config::key const&) ()
from /lib/x86_64-linux-gnu/libcwidget.so.4
#18 0x00007ffff7bd328d in cwidget::widgets::widget::dispatch_key(cwidget::config::key const&) () from /lib/x86_64-linux-gnu/libcwidget.so.4
#19 0x00007ffff7ba6af0 in cwidget::widgets::menubar::handle_key(cwidget::config::key const&) () from /lib/x86_64-linux-gnu/libcwidget.so.4
#20 0x00007ffff7bd328d in cwidget::widgets::widget::dispatch_key(cwidget::config::key const&) () from /lib/x86_64-linux-gnu/libcwidget.so.4
#21 0x00007ffff7b897df in cwidget::toplevel::input_thread::get_input_event::dispatch() () from /lib/x86_64-linux-gnu/libcwidget.so.4
#22 0x00007ffff7b83205 in cwidget::toplevel::mainloop() () from /lib/x86_64-linux-gnu/libcwidget.so.4
#23 0x00005555556de395 in ui_main () at ../../src/ui.cc:3147
#24 0x000055555561acc0 in main (argc=1, argv=<optimized out>) at ../../src/main.cc:1427
(gdb) set print pretty
(gdb) bt
#0 infer_reason (pkg=..., reasons=std::set with 0 elements) at ../../../../src/generic/apt/infer_reason.cc:167
#1 0x00005555556b534e in reason_fragment (pkg=..., breakage=@0x7fffffffce77: false) at ../../src/reason_fragment.cc:447
#2 0x00005555556ae20e in info_area_multiplex::set_package (this=0x55556834ae10, pkg=..., ver=...) at ../../src/pkg_view.cc:454
#3 0x0000555555686801 in sigc::internal::signal_emit2<void, pkgCache::PkgIterator const&, pkgCache::VerIterator const&, sigc::nil>::emit (
impl=0x555562533260, _A_a1=..., _A_a2=...) at /usr/include/sigc++-2.0/sigc++/signal.h:1300
#4 0x0000555555685b8d in sigc::signal2<void, pkgCache::PkgIterator const&, pkgCache::VerIterator const&, sigc::nil>::emit (
this=<optimized out>, _A_a1=..., _A_a2=...) at /usr/include/sigc++-2.0/sigc++/signal.h:3123
#5 sigc::signal2<void, pkgCache::PkgIterator const&, pkgCache::VerIterator const&, sigc::nil>::operator() (this=<optimized out>, _A_a1=...,
_A_a2=...) at /usr/include/sigc++-2.0/sigc++/signal.h:3139
#6 pkg_item::do_highlighted_changed (this=<optimized out>, highlighted=<optimized out>) at ../../src/pkg_item.cc:115
#7 0x000055555563b22d in sigc::internal::signal_emit1<void, bool, sigc::nil>::emit (impl=0x55556839f420, _A_a1=@0x7fffffffd110: true)
at /usr/include/sigc++-2.0/sigc++/signal.h:1045
#8 0x00007ffff7bcad7e in cwidget::widgets::tree::line_down() () from /lib/x86_64-linux-gnu/libcwidget.so.4
#9 0x00007ffff7bd0c28 in cwidget::widgets::tree::handle_key(cwidget::config::key const&) () from /lib/x86_64-linux-gnu/libcwidget.so.4
#10 0x00007ffff7bd328d in cwidget::widgets::widget::dispatch_key(cwidget::config::key const&) () from /lib/x86_64-linux-gnu/libcwidget.so.4
#11 0x00007ffff7bbafbd in cwidget::widgets::table::handle_key(cwidget::config::key const&) () from /lib/x86_64-linux-gnu/libcwidget.so.4
#12 0x00007ffff7bd328d in cwidget::widgets::widget::dispatch_key(cwidget::config::key const&) () from /lib/x86_64-linux-gnu/libcwidget.so.4
#13 0x00007ffff7bb355f in cwidget::widgets::passthrough::handle_key(cwidget::config::key const&) ()
from /lib/x86_64-linux-gnu/libcwidget.so.4
#14 0x00007ffff7bd328d in cwidget::widgets::widget::dispatch_key(cwidget::config::key const&) () from /lib/x86_64-linux-gnu/libcwidget.so.4
#15 0x00007ffff7bbafbd in cwidget::widgets::table::handle_key(cwidget::config::key const&) () from /lib/x86_64-linux-gnu/libcwidget.so.4
#16 0x00007ffff7bd328d in cwidget::widgets::widget::dispatch_key(cwidget::config::key const&) () from /lib/x86_64-linux-gnu/libcwidget.so.4
#17 0x00007ffff7bb355f in cwidget::widgets::passthrough::handle_key(cwidget::config::key const&) ()
from /lib/x86_64-linux-gnu/libcwidget.so.4
#18 0x00007ffff7bd328d in cwidget::widgets::widget::dispatch_key(cwidget::config::key const&) () from /lib/x86_64-linux-gnu/libcwidget.so.4
#19 0x00007ffff7ba6af0 in cwidget::widgets::menubar::handle_key(cwidget::config::key const&) () from /lib/x86_64-linux-gnu/libcwidget.so.4
#20 0x00007ffff7bd328d in cwidget::widgets::widget::dispatch_key(cwidget::config::key const&) () from /lib/x86_64-linux-gnu/libcwidget.so.4
#21 0x00007ffff7b897df in cwidget::toplevel::input_thread::get_input_event::dispatch() () from /lib/x86_64-linux-gnu/libcwidget.so.4
#22 0x00007ffff7b83205 in cwidget::toplevel::mainloop() () from /lib/x86_64-linux-gnu/libcwidget.so.4
#23 0x00005555556de395 in ui_main () at ../../src/ui.cc:3147
#24 0x000055555561acc0 in main (argc=1, argv=<optimized out>) at ../../src/main.cc:1427
Regards,
Alex
-- Package-specific info:
Terminal: rxvt-unicode-256color
$DISPLAY not set.
which aptitude: /usr/bin/aptitude
aptitude version information:
aptitude 0.8.13
Compiler: g++ 14.2.0
Compiled against:
apt version 7.0.0
NCurses version 6.5
libsigc++ version: 2.12.1
Gtk+ support disabled.
Qt support disabled.
Current library versions:
NCurses version: ncurses 6.5.20250216
cwidget version: 0.5.18
Apt version: 7.0.0
aptitude linkage:
linux-vdso.so.1 (0x00007f5576323000)
libapt-pkg.so.7.0 => /lib/x86_64-linux-gnu/libapt-pkg.so.7.0 (0x00007f5575a00000)
libncursesw.so.6 => /lib/x86_64-linux-gnu/libncursesw.so.6 (0x00007f55762bb000)
libtinfo.so.6 => /lib/x86_64-linux-gnu/libtinfo.so.6 (0x00007f5576285000)
libsigc-2.0.so.0 => /lib/x86_64-linux-gnu/libsigc-2.0.so.0 (0x00007f557627c000)
libcwidget.so.4 => /lib/x86_64-linux-gnu/libcwidget.so.4 (0x00007f5575cf8000)
libsqlite3.so.0 => /lib/x86_64-linux-gnu/libsqlite3.so.0 (0x00007f5575880000)
libboost_iostreams.so.1.83.0 => /lib/x86_64-linux-gnu/libboost_iostreams.so.1.83.0 (0x00007f5575cdf000)
libxapian.so.30 => /lib/x86_64-linux-gnu/libxapian.so.30 (0x00007f5575600000)
libstdc++.so.6 => /lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f5575200000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f5575510000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f5575cb2000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f557500a000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f5575c92000)
libbz2.so.1.0 => /lib/x86_64-linux-gnu/libbz2.so.1.0 (0x00007f5575c7f000)
liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5 (0x00007f55754df000)
liblz4.so.1 => /lib/x86_64-linux-gnu/liblz4.so.1 (0x00007f55754b8000)
libzstd.so.1 => /lib/x86_64-linux-gnu/libzstd.so.1 (0x00007f5574f40000)
libudev.so.1 => /lib/x86_64-linux-gnu/libudev.so.1 (0x00007f5575473000)
libsystemd.so.0 => /lib/x86_64-linux-gnu/libsystemd.so.0 (0x00007f5574e2b000)
libcrypto.so.3 => /lib/x86_64-linux-gnu/libcrypto.so.3 (0x00007f5574600000)
libxxhash.so.0 => /lib/x86_64-linux-gnu/libxxhash.so.0 (0x00007f557586d000)
/lib64/ld-linux-x86-64.so.2 (0x00007f5576325000)
libuuid.so.1 => /lib/x86_64-linux-gnu/libuuid.so.1 (0x00007f5575863000)
libcap.so.2 => /lib/x86_64-linux-gnu/libcap.so.2 (0x00007f5575467000)
-- System Information:
Debian Release: 13.2
APT prefers testing-debug
APT policy: (500, 'testing-debug'), (500, 'stable-updates'), (500, 'stable-security'), (500, 'stable-debug'), (500, 'proposed-updates-debug'), (500, 'oldstable-security'), (500, 'oldoldstable-security'), (500, 'oldoldstable'), (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 6.17.7 (SMP w/8 CPU threads; PREEMPT)
Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8), LANGUAGE=en_US:en
Shell: /bin/sh linked to /usr/bin/dash
Init: sysvinit (via /sbin/init)
Versions of packages aptitude depends on:
ii aptitude-common 0.8.13-7
ii libapt-pkg7.0 3.0.3
ii libboost-iostreams1.83.0 1.83.0-4.2
ii libc6 2.41-12
ii libcwidget4 0.5.18-6+b2
ii libgcc-s1 14.2.0-19
ii libncursesw6 6.5+20250216-2
ii libsigc++-2.0-0v5 2.12.1-3
ii libsqlite3-0 3.46.1-7
ii libstdc++6 14.2.0-19
ii libtinfo6 6.5+20250216-2
ii libxapian30 1.4.29-3
Versions of packages aptitude recommends:
ii libdpkg-perl 1.22.21
ii sensible-utils 0.0.25
Versions of packages aptitude suggests:
pn apt-xapian-index <none>
pn aptitude-doc-en | aptitude-doc <none>
pn debtags <none>
ii tasksel 3.81
-- no debconf information
[https://cetitec.com/_resources/app/css/img/signature_logo.png]
CETITEC GmbH
Mannheimer Str. 17
D-75179 Pforzheim
https://www.cetitec.com
Sitz der Gesellschaft / Location: Pforzheim, Germany
Amtsgericht / Registry Court: Mannheim, Germany, HRB 715734
Geschäftsführer / Chief Executive Officer: Dr. Michael Back
________________________________
Hinweis / Note:
Diese E-Mail enthält vertrauliche und/oder rechtlich geschützte Informationen. Wenn Sie nicht der richtige Adressat sind oder diese E-Mail irrtümlich erhalten haben, informieren Sie bitte sofort den Absender und löschen Sie diese Mail. Das unerlaubte Speichern, Kopieren sowie die unbefugte Weitergabe dieser Mail ist nicht gestattet!
This e-mail may contain confidential and/or privileged information. If you are not the intended recipient or have received this e-mail in error, please notify the sender immediately and delete this e-mail. Any unauthorized copying, disclosure or distribution of the contents in this e-mail is not allowed!
-------------- next part --------------
A non-text attachment was scrubbed...
Name: aptitude-backtrace.txt.gz
Type: application/gzip
Size: 3682 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/aptitude-devel/attachments/20251208/c14dec72/attachment-0001.gz>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: shot.png
Type: image/png
Size: 22471 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/aptitude-devel/attachments/20251208/c14dec72/attachment-0001.png>
More information about the Aptitude-devel
mailing list