On Mon, Dec 28, 2015 at 10:25:07AM +0800, Paul Wise wrote: > On Mon, 28 Dec 2015 01:57:25 +0000 Bjarni Ingi Gislason wrote: > > > aptitude changelog apt ... > > Does this always produce the same outcome? >
Yes, at least three times. > > Output was "Illegal instruction" with a return value of 132. > ... > > Architecture: i386 (i586) > > There are some things that would help the aptitude maintainers figure > out what the problem is: > > Send the output of this command: > > cat /proc/cpuinfo > processor : 0 vendor_id : AuthenticAMD cpu family : 5 model : 8 model name : AMD-K6(tm) 3D processor stepping : 12 cpu MHz : 331.579 cache size : 64 KB fdiv_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 1 wp : yes flags : fpu vme de pse tsc msr cx8 pge mmx syscall 3dnow k6_mtrr vmmcall bogomips : 663.15 clflush size : 32 cache_alignment : 32 address sizes : 32 bits physical, 32 bits virtual power management: > Enable the debug repo, install debug symbols, gdb and make a backtrace: > > Create this file: > > /etc/apt/sources.list.d/04-debian-debug.sources > Error from apt-get. The line must end with ".list" > Put this line in it: > > deb http://debug.mirrors.debian.org/debian-debug/ unstable-debug main > Error from apt-get. The URL may not end with "/". > Update the apt cache: > > sudo apt-get update > > Install the gdb debugger and debug symbols: > > sudo apt-get install gdb aptitude-dbg libapt-pkg5.0-dbgsym libboost1.58-dbg > libc6-dbg libncursesw5-dbg libgcc1-dbg libsqlite3-0-dbg libstdc++6-5-dbg > libtinfo5-dbg libxapian22v5-dbg > > Run the debugger and get a crash trace: > > gdb -batch -n -ex 'set height 0' -ex run -ex bt -ex 'thread apply all bt > full' --args aptitude changelog apt > Running just "aptitude" shows no error (no command issued except "q"). Running "aptitude changelog" (no furter arguments) returns normally with no output. Running "aptitude changelog apt" in a writable directory gives a core dump. "gdb --core=core" shows: Script started on þri 29. des 2015, kl. 04.08.33 GMT $ gdb --core=core GNU gdb (Debian 7.10-1) 7.10 Copyright (C) 2015 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 "i586-linux-gnu". Type "show configuration" for configuration details. For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>. Find the GDB manual and other documentation resources online at: <http://www.gnu.org/software/gdb/documentation/>. For help, type "help". Type "apropos word" to search for commands related to "word". [New LWP 4270] [New LWP 4261] [New LWP 4268] Core was generated by `aptitude changelog apt'. Program terminated with signal SIGILL, Illegal instruction. #0 0xb6f5216f in ?? () [Current thread is 1 (LWP 4270)] (gdb) quit $ exit exit Script done on þri 29. des 2015, kl. 04.10.11 GMT The gdb trace reports: Script started on þri 29. des 2015, kl. 04.11.05 GMT $ gdb -batch -n -ex 'set height 0' -ex run -ex bt -ex 'thread apply all bt full' --args aptitude changelog apt [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1". [New Thread 0xb435bb40 (LWP 4317)] [New Thread 0xb3b5bb40 (LWP 4318)] [New Thread 0xb335bb40 (LWP 4319)] [New Thread 0xb2b5bb40 (LWP 4320)] Program received signal SIGILL, Illegal instruction. [Switching to Thread 0xb335bb40 (LWP 4319)] 0xb7bf216f in boost::filesystem::path::m_parent_path_end (this=this@entry=0xb335afc4) at libs/filesystem/src/path.cpp:348 348 libs/filesystem/src/path.cpp: No such file or directory. #0 0xb7bf216f in boost::filesystem::path::m_parent_path_end (this=this@entry=0xb335afc4) at libs/filesystem/src/path.cpp:348 #1 0xb7bf238a in boost::filesystem::path::parent_path (this=this@entry=0xb335afc4) at libs/filesystem/src/path.cpp:353 #2 0xb7beb3f8 in boost::filesystem::detail::create_directories (p=..., ec=0x0) at libs/filesystem/src/operations.cpp:940 #3 0x801b5e51 in boost::filesystem::create_directories (p=...) at /usr/include/boost/filesystem/operations.hpp:523 #4 get_download_cache () at ../../../../src/generic/apt/apt.cc:571 #5 0x801da21a in aptitude::(anonymous namespace)::download_thread::cache_lookup_thread::process_job (job=std::shared_ptr (empty) 0xb5f020b0, this=0xb335b308) at ../../../../src/generic/apt/download_queue.cc:567 #6 aptitude::util::job_queue_thread<aptitude::(anonymous namespace)::download_thread::cache_lookup_thread, std::shared_ptr<aptitude::(anonymous namespace)::download_thread::start_request> >::run (this=this@entry=0xb5f06304) at ../../../../src/generic/util/job_queue_thread.h:206 #7 0x801dafc4 in aptitude::util::job_queue_thread<aptitude::(anonymous namespace)::download_thread::cache_lookup_thread, std::shared_ptr<aptitude::(anonymous namespace)::download_thread::start_request> >::bootstrap::operator() (this=<synthetic pointer>) at ../../../../src/generic/util/job_queue_thread.h:80 #8 cwidget::threads::thread::bootstrap<aptitude::util::job_queue_thread<aptitude::(anonymous namespace)::download_thread::cache_lookup_thread, std::shared_ptr<aptitude::(anonymous namespace)::download_thread::start_request> >::bootstrap> (p=0xb5f0bdb8) at /usr/include/cwidget/generic/threads/threads.h:117 #9 0xb79bff6b in start_thread (arg=0xb335bb40) at pthread_create.c:333 #10 0xb773697e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:122 Thread 5 (Thread 0xb2b5bb40 (LWP 4320)): #0 __GI___call_tls_dtors () at cxa_thread_atexit_impl.c:86 No locals. #1 0xb79bff79 in start_thread (arg=0xb2b5bb40) at pthread_create.c:343 pd = 0xb2b5bb40 unwind_buf = {cancel_jmp_buf = {{jmp_buf = {-1214435328, 0, -1296712896, -1296714776, 1844788472, 829241074}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = <optimized out> pagesize_m1 = <optimized out> sp = <optimized out> freesize = <optimized out> __PRETTY_FUNCTION__ = "start_thread" #2 0xb773697e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:122 No locals. Thread 4 (Thread 0xb335bb40 (LWP 4319)): #0 0xb7bf216f in boost::filesystem::path::m_parent_path_end (this=this@entry=0xb335afc4) at libs/filesystem/src/path.cpp:348 end_pos = 15 filename_was_separator = <optimized out> #1 0xb7bf238a in boost::filesystem::path::parent_path (this=this@entry=0xb335afc4) at libs/filesystem/src/path.cpp:353 end_pos = <optimized out> #2 0xb7beb3f8 in boost::filesystem::detail::create_directories (p=..., ec=0x0) at libs/filesystem/src/operations.cpp:940 local_ec = {m_val = 2, m_cat = 0xb7be006c <boost::system::system_category()::system_category_const>} parent = {static preferred_separator = 47 '/', m_pathname = "\203Ä\030[Ã\215´&\000\000\000\000\215B\001\203ì\f\211\021Pèê\232ö"} #3 0x801b5e51 in boost::filesystem::create_directories (p=...) at /usr/include/boost/filesystem/operations.hpp:523 No locals. #4 get_download_cache () at ../../../../src/generic/apt/apt.cc:571 env_XDG_CACHE_HOME = <optimized out> xdg_cache_home = "/home/bg/.cache" download_cache_dir = "/home/bg/.cache/aptitude" download_cache_file_name = "" logger = std::shared_ptr (count 2, weak 1) 0x803cf434 #5 0x801da21a in aptitude::(anonymous namespace)::download_thread::cache_lookup_thread::process_job (job=std::shared_ptr (empty) 0xb5f020b0, this=0xb335b308) at ../../../../src/generic/apt/download_queue.cc:567 download_cache = std::shared_ptr (empty) 0x0 #6 aptitude::util::job_queue_thread<aptitude::(anonymous namespace)::download_thread::cache_lookup_thread, std::shared_ptr<aptitude::(anonymous namespace)::download_thread::start_request> >::run (this=this@entry=0xb5f06304) at ../../../../src/generic/util/job_queue_thread.h:206 next = std::shared_ptr (count 1, weak 0) 0xb5f020bc l = {parent = @0x803c4cb8, locked = false} #7 0x801dafc4 in aptitude::util::job_queue_thread<aptitude::(anonymous namespace)::download_thread::cache_lookup_thread, std::shared_ptr<aptitude::(anonymous namespace)::download_thread::start_request> >::bootstrap::operator() (this=<synthetic pointer>) at ../../../../src/generic/util/job_queue_thread.h:80 No locals. #8 cwidget::threads::thread::bootstrap<aptitude::util::job_queue_thread<aptitude::(anonymous namespace)::download_thread::cache_lookup_thread, std::shared_ptr<aptitude::(anonymous namespace)::download_thread::start_request> >::bootstrap> (p=0xb5f0bdb8) at /usr/include/cwidget/generic/threads/threads.h:117 No locals. #9 0xb79bff6b in start_thread (arg=0xb335bb40) at pthread_create.c:333 __res = <optimized out> pd = 0xb335bb40 unwind_buf = {cancel_jmp_buf = {{jmp_buf = {-1214435328, 0, -1288324288, -1288326168, 1844788475, 829241074}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = <optimized out> pagesize_m1 = <optimized out> sp = <optimized out> freesize = <optimized out> __PRETTY_FUNCTION__ = "start_thread" #10 0xb773697e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:122 No locals. Thread 3 (Thread 0xb3b5bb40 (LWP 4318)): #0 __GI___call_tls_dtors () at cxa_thread_atexit_impl.c:86 No locals. #1 0xb79bff79 in start_thread (arg=0xb3b5bb40) at pthread_create.c:343 pd = 0xb3b5bb40 unwind_buf = {cancel_jmp_buf = {{jmp_buf = {-1214435328, 0, -1279935680, -1279937560, 1844788474, 829241074}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = <optimized out> pagesize_m1 = <optimized out> sp = <optimized out> freesize = <optimized out> __PRETTY_FUNCTION__ = "start_thread" #2 0xb773697e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:122 No locals. Thread 2 (Thread 0xb435bb40 (LWP 4317)): quit #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/i386/i586/../i486/pthread_cond_wait.S:188 No locals. Backtrace stopped: Cannot access memory at address 0xb435b01c Couldn't get registers: No such process. $ quit ^Zbash: quit: command not found $ exit exit Script done on þri 29. des 2015, kl. 04.26.07 GMT While "gdb" is working, "top" shows that it uses first about 80 % CPU, then about 6 % and 83 % waiting (wa). The disk-light is then continously lit. After "Thread 2 (Thread 0xb435bb40 (LWP 4317)):" there is no progress. Therefor I issued the "quit" command. -- Bjarni I. Gislason