[Pkg-bitcoin-devel] Bug#841951: bitcoin-qt segfaults on startup

Erik de Castro Lopo erikd at mega-nerd.com
Tue Oct 25 08:16:45 UTC 2016


Anthony Towns wrote:

> > Starting program: /home/erikd/Local/bin/bitcoin-qt
> 
> That's an odd location for the packaged binary?

Yeah, gdb-ed the wrong binary. The correct binary does the same.

> bitcoin-qt's working fine for me with the same versions of the libraries
> as you have, so I'll downgrade this report.
> 
> Some things you might like to try if you haven't already:
> 
>  - try running
>     /usr/lib/x86_64-linux-gnu/qt5/examples/gui/analogclock/analogclock
>    from qtbase5-examples to see if simple qt programs fail?

That works fine.

>  - running "bitcoin-qt -regtest" to eliminate downloading the blockchain
>    and contacting peers while debugging

That segfaults. Very similar to before.

>  - installing bitcoind, and trying it in headless mode to avoid qt and
>    graphics related bugs

That fine also, suggesting its either qt or graphics driver related (also
as suggested by the backtrace).

>  - use "ssh -X" to get into your new desktop from somewhere else, and
>    run bitcoin-qt from there, to perhaps eliminate any problems related
>    to graphics drivers?

Crashed X displaying to another machine as well.

> > There doesn't seem to be any debug symbols available for libqt5gui5 so
> > I was not able to debug this futher.
> 
> Have you tried installing the qtbase5-dbg and related packages? That
> seems to give me useful debug info.

Ok, now I have debug symbols. BT follows.

Erik


> gdb --args /usr/bin/bitcoin-qt -regtest
GNU gdb (Debian 7.11.1-2) 7.11.1
Copyright (C) 2016 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".
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"...
Reading symbols from /usr/bin/bitcoin-qt...(no debugging symbols found)...done.
(gdb) r
Starting program: /usr/bin/bitcoin-qt -regtest
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7fffe9215700 (LWP 14921)]
[New Thread 0x7fffdc84d700 (LWP 14935)]
[New Thread 0x7fffd7fff700 (LWP 14936)]
[New Thread 0x7fffd77fe700 (LWP 14943)]
[New Thread 0x7fffd6bdd700 (LWP 14944)]
[New Thread 0x7fffd63dc700 (LWP 14945)]
[New Thread 0x7fffd57bd700 (LWP 14946)]
[New Thread 0x7fffd4fbc700 (LWP 14947)]
[New Thread 0x7fffbffff700 (LWP 14958)]
[Thread 0x7fffbffff700 (LWP 14958) exited]
[New Thread 0x7fffbf7fe700 (LWP 14959)]
[New Thread 0x7fffbeffd700 (LWP 14960)]
[New Thread 0x7fffbe7fc700 (LWP 14961)]
[Thread 0x7fffbeffd700 (LWP 14960) exited]
[New Thread 0x7fffbdffb700 (LWP 14962)]
[New Thread 0x7fffbd7fa700 (LWP 14963)]
[New Thread 0x7fffbcff9700 (LWP 14964)]
[New Thread 0x7fffa3fff700 (LWP 14965)]

Thread 1 "bitcoin-qt" received signal SIGSEGV, Segmentation fault.
qglx_findConfig (display=display at entry=0x555556151080, screen=screen at entry=0, format=..., 
    drawableBit=drawableBit at entry=1) at glxconvenience/qglxconvenience.cpp:157
157	glxconvenience/qglxconvenience.cpp: No such file or directory.
(gdb) bt
#0  qglx_findConfig (display=display at entry=0x555556151080, screen=screen at entry=0, format=..., 
    drawableBit=drawableBit at entry=1) at glxconvenience/qglxconvenience.cpp:157
#1  0x00007ffff7fe529d in qglx_findVisualInfo (display=0x555556151080, screen=0, format=0x555557016b68)
    at glxconvenience/qglxconvenience.cpp:192
#2  0x00007fffeb1693bd in QXcbWindow::create (this=0x555557016b10) at qxcbwindow.cpp:416
#3  0x00007fffeb1547b1 in QXcbIntegration::createPlatformWindow (this=<optimized out>, window=0x55555701c0d0)
    at qxcbintegration.cpp:203
#4  0x00007ffff659e2fc in QWindowPrivate::create (this=0x555556f44360, recursive=recursive at entry=false)
    at kernel/qwindow.cpp:395
#5  0x00007ffff659e6ab in QWindow::create (this=this at entry=0x55555701c0d0) at kernel/qwindow.cpp:555
#6  0x00007ffff6bb74e4 in QWidgetPrivate::create_sys (this=this at entry=0x555557014ea0, window=window at entry=0, 
    initializeWindow=initializeWindow at entry=true, destroyOldWindow=destroyOldWindow at entry=true)
    at kernel/qwidget.cpp:1467
#7  0x00007ffff6bb6b9d in QWidget::create (this=0x555556c23970, window=window at entry=0, 
    initializeWindow=initializeWindow at entry=true, destroyOldWindow=destroyOldWindow at entry=true)
    at kernel/qwidget.cpp:1331
#8  0x00007ffff6bb6fce in QWidgetPrivate::createWinId (this=<optimized out>) at kernel/qwidget.cpp:2556
#9  0x00007ffff6bb7859 in QWidget::createWinId (this=this at entry=0x555556c23970) at kernel/qwidget.cpp:2575
#10 0x00007ffff6f0ff02 in QSystemTrayIconSys::addToTray (this=0x555556c23970) at util/qsystemtrayicon_x11.cpp:139
#11 0x00007ffff6f1016c in QSystemTrayIconSys::QSystemTrayIconSys (this=0x555556c23970, qIn=<optimized out>)
    at util/qsystemtrayicon_x11.cpp:131
#12 0x00007ffff6f10322 in QSystemTrayIconPrivate::install_sys (this=this at entry=0x555556a8aed0)
    at util/qsystemtrayicon_x11.cpp:270
#13 0x00007ffff6ef1477 in QSystemTrayIcon::setVisible (this=<optimized out>, visible=<optimized out>)
    at util/qsystemtrayicon.cpp:271
#14 0x00005555555d7090 in ?? ()
#15 0x00005555555c311a in ?? ()
#16 0x00007ffff61e4729 in QObject::event (this=this at entry=0x7fffffffe010, e=e at entry=0x7fffc85f6c80)
    at kernel/qobject.cpp:1256
#17 0x00007ffff61bc8dc in QCoreApplication::event (this=this at entry=0x7fffffffe010, e=e at entry=0x7fffc85f6c80)
    at kernel/qcoreapplication.cpp:1785
#18 0x00007ffff65909a4 in QGuiApplication::event (this=this at entry=0x7fffffffe010, e=e at entry=0x7fffc85f6c80)
    at kernel/qguiapplication.cpp:1626
#19 0x00007ffff6b8154f in QApplication::event (this=0x7fffffffe010, e=0x7fffc85f6c80) at kernel/qapplication.cpp:2075
#20 0x00007ffff6b7dbec in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x7fffffffe010, 
    e=0x7fffc85f6c80) at kernel/qapplication.cpp:3804
#21 0x00007ffff6b8308f in QApplication::notify (this=0x7fffffffe010, receiver=0x7fffffffe010, e=0x7fffc85f6c80)
    at kernel/qapplication.cpp:3561
#22 0x00007ffff61b6450 in QCoreApplication::notifyInternal2 (receiver=0x7fffffffe010, event=event at entry=0x7fffc85f6c80)
    at kernel/qcoreapplication.cpp:1015
#23 0x00007ffff61b83cc in QCoreApplication::sendEvent (event=0x7fffc85f6c80, receiver=<optimized out>)
    at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:225
#24 QCoreApplicationPrivate::sendPostedEvents (receiver=receiver at entry=0x0, event_type=event_type at entry=0, 
    data=0x555556143020) at kernel/qcoreapplication.cpp:1650
#25 0x00007ffff61b8888 in QCoreApplication::sendPostedEvents (receiver=receiver at entry=0x0, event_type=event_type at entry=0)
    at kernel/qcoreapplication.cpp:1508
#26 0x00007ffff620c0f3 in postEventSourceDispatch (s=0x55555616fa70) at kernel/qeventdispatcher_glib.cpp:270
#27 0x00007ffff29857d7 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#28 0x00007ffff2985a40 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#29 0x00007ffff2985aec in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#30 0x00007ffff620c4ff in QEventDispatcherGlib::processEvents (this=0x55555616f8c0, flags=...)
    at kernel/qeventdispatcher_glib.cpp:417
#31 0x00007ffff61b419a in QEventLoop::exec (this=this at entry=0x7fffffffdcb0, flags=..., flags at entry=...)
    at kernel/qeventloop.cpp:204
#32 0x00007ffff61bc99c in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1285
#33 0x00005555555b98a7 in ?? ()
---Type <return> to continue, or q <return> to quit---
#34 0x00007ffff376b2b1 in __libc_start_main (main=0x5555555b8b50, argc=2, argv=0x7fffffffe488, init=<optimized out>, 
    fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffe478) at ../csu/libc-start.c:291
#35 0x00005555555c1fda in ?? ()
(gdb) q



-- 
----------------------------------------------------------------------
Erik de Castro Lopo
http://www.mega-nerd.com/



More information about the Pkg-bitcoin-devel mailing list