Konqueror: segmentation fault, crash

When trying to open any web page in Konqueror, the application crashes with the following error message:

Application: Konqueror (konqueror), signal: Segmentation faultUsing host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7fb204af1780 (LWP 5301))]


Thread 7 (Thread 0x7fb1e5627700 (LWP 5302)):
#0  0x00007fb2033b985f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007fb1f77bb6f6 in WTF::TCMalloc_PageHeap::scavengerThread() () at /usr/lib64/libQtWebKit.so.4
#2  0x00007fb1f77bb729 in  () at /usr/lib64/libQtWebKit.so.4
#3  0x00007fb2033b53a4 in start_thread () at /lib64/libpthread.so.0
#4  0x00007fb20212ba4d in clone () at /lib64/libc.so.6


Thread 6 (Thread 0x7fb19fffd700 (LWP 5303)):
#0  0x00007fb2021234ad in poll () at /lib64/libc.so.6
#1  0x00007fb1ff235be4 in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007fb1ff235cec in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#3  0x00007fb2037790de in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#4  0x00007fb20374ae6f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#5  0x00007fb20374b165 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#6  0x00007fb2036480bf in QThread::exec() () at /usr/lib64/libQtCore.so.4
#7  0x00007fb20364a79f in  () at /usr/lib64/libQtCore.so.4
#8  0x00007fb2033b53a4 in start_thread () at /lib64/libpthread.so.0
#9  0x00007fb20212ba4d in clone () at /lib64/libc.so.6


Thread 5 (Thread 0x7fb19f033700 (LWP 5304)):
#0  0x00007fb2033b985f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007fb1f752deed in JSC::BlockAllocator::blockFreeingThreadMain() () at /usr/lib64/libQtWebKit.so.4
#2  0x00007fb1f77e3256 in WTF::wtfThreadEntryPoint(void*) () at /usr/lib64/libQtWebKit.so.4
#3  0x00007fb2033b53a4 in start_thread () at /lib64/libpthread.so.0
#4  0x00007fb20212ba4d in clone () at /lib64/libc.so.6


Thread 4 (Thread 0x7fb19e3ec700 (LWP 5307)):
#0  0x00007fb2021234ad in poll () at /lib64/libc.so.6
#1  0x00007fb1ff235be4 in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007fb1ff235cec in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#3  0x00007fb2037790de in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#4  0x00007fb20374ae6f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#5  0x00007fb20374b165 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#6  0x00007fb2036480bf in QThread::exec() () at /usr/lib64/libQtCore.so.4
#7  0x00007fb1fa77ac3e in  () at /usr/lib64/libkio.so.5
#8  0x00007fb20364a79f in  () at /usr/lib64/libQtCore.so.4
#9  0x00007fb2033b53a4 in start_thread () at /lib64/libpthread.so.0
#10 0x00007fb20212ba4d in clone () at /lib64/libc.so.6


Thread 3 (Thread 0x7fb19dbeb700 (LWP 5308)):
#0  0x00007fb2033b9c08 in pthread_cond_timedwait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007fb20364ac64 in QWaitCondition::wait(QMutex*, unsigned long) () at /usr/lib64/libQtCore.so.4
#2  0x00007fb20363e7ba in  () at /usr/lib64/libQtCore.so.4
#3  0x00007fb20364a79f in  () at /usr/lib64/libQtCore.so.4
#4  0x00007fb2033b53a4 in start_thread () at /lib64/libpthread.so.0
#5  0x00007fb20212ba4d in clone () at /lib64/libc.so.6


Thread 2 (Thread 0x7fb186f45700 (LWP 5321)):
#0  0x00007fb20211f57d in read () at /lib64/libc.so.6
#1  0x00007fb1f1096f45 in  () at /usr/lib64/tls/libnvidia-tls.so.343.22
#2  0x00007fb1ff276750 in  () at /usr/lib64/libglib-2.0.so.0
#3  0x00007fb1ff235714 in g_main_context_check () at /usr/lib64/libglib-2.0.so.0
#4  0x00007fb1ff235b7b in  () at /usr/lib64/libglib-2.0.so.0
#5  0x00007fb1ff235f0a in g_main_loop_run () at /usr/lib64/libglib-2.0.so.0
#6  0x00007fb18efe4586 in  () at /usr/lib64/libgio-2.0.so.0
#7  0x00007fb1ff25ab85 in  () at /usr/lib64/libglib-2.0.so.0
#8  0x00007fb2033b53a4 in start_thread () at /lib64/libpthread.so.0
#9  0x00007fb20212ba4d in clone () at /lib64/libc.so.6


Thread 1 (Thread 0x7fb204af1780 (LWP 5301)):
[KCrash Handler]
#5  0x00007fb17f31b5df in gdk_display_open () at /usr/lib64/libgdk-x11-2.0.so.0
#6  0x00007fb17f2ec5cd in gdk_display_open_default_libgtk_only () at /usr/lib64/libgdk-x11-2.0.so.0
#7  0x00007fb17f6b5ab4 in gtk_init_check () at /usr/lib64/libgtk-x11-2.0.so.0
#8  0x00007fb17f6b5ad9 in gtk_init () at /usr/lib64/libgtk-x11-2.0.so.0
#9  0x00007fb1f6cad09b in WebCore::initializeGtk(QLibrary*) () at /usr/lib64/libQtWebKit.so.4
#10 0x00007fb1f6cad37f in WebCore::PluginPackage::load() () at /usr/lib64/libQtWebKit.so.4
#11 0x00007fb1f6cad596 in WebCore::PluginPackage::fetchInfo() () at /usr/lib64/libQtWebKit.so.4
#12 0x00007fb1f6a86a76 in WebCore::PluginPackage::createPackage(WTF::String const&, long const&) () at /usr/lib64/libQtWebKit.so.4
#13 0x00007fb1f6a84275 in WebCore::PluginDatabase::refresh() () at /usr/lib64/libQtWebKit.so.4
#14 0x00007fb1f6a853b1 in WebCore::PluginDatabase::installedPlugins(bool) () at /usr/lib64/libQtWebKit.so.4
#15 0x00007fb1f63a09f1 in PlatformStrategiesQt::getPluginInfo(WebCore::Page const*, WTF::Vector<WebCore::PluginInfo, 0ul>&) () at /usr/lib64/libQtWebKit.so.4
#16 0x00007fb1f69dc174 in WebCore::PluginData::PluginData(WebCore::Page const*) () at /usr/lib64/libQtWebKit.so.4
#17 0x00007fb1f69be678 in WebCore::Page::pluginData() const () at /usr/lib64/libQtWebKit.so.4
#18 0x00007fb1f69dc80c in WebCore::DOMPluginArray::canGetItemsForName(WTF::AtomicString const&) () at /usr/lib64/libQtWebKit.so.4
#19 0x00007fb1f63d1ce3 in WebCore::JSDOMPluginArray::canGetItemsForName(JSC::ExecState*, WebCore::DOMPluginArray*, JSC::PropertyName) () at /usr/lib64/libQtWebKit.so.4
#20 0x00007fb1f72032d3 in WebCore::JSDOMPluginArray::getOwnPropertySlot(JSC::JSCell*, JSC::ExecState*, JSC::PropertyName, JSC::PropertySlot&) () at /usr/lib64/libQtWebKit.so.4
#21 0x00007fb1f7591eb6 in JSC::JSValue::get(JSC::ExecState*, JSC::PropertyName, JSC::PropertySlot&) const () at /usr/lib64/libQtWebKit.so.4
#22 0x00007fb1f766b1b7 in JSC::LLInt::getByVal(JSC::ExecState*, JSC::JSValue, JSC::JSValue) () at /usr/lib64/libQtWebKit.so.4
#23 0x00007fb1f76644ac in llint_slow_path_get_by_val () at /usr/lib64/libQtWebKit.so.4
#24 0x00007fb1f766dbd3 in llint_op_get_by_val () at /usr/lib64/libQtWebKit.so.4
#25 0x00007fb19d28fa80 in  ()
#26 0x000000000000000a in  ()
#27 0x00007fb19cc11198 in  ()
#28 0xffffffffffffffff in  ()#29 0x00007fb1a0000920 in  ()
#30 0x00007fb1f770043e in JSC::ProgramExecutable::initalizeGlobalProperties(JSC::JSGlobalData&, JSC::ExecState*, JSC::JSScope*) () at /usr/lib64/libQtWebKit.so.4
#31 0x00007fb1f76067a7 in JSC::Interpreter::execute(JSC::ProgramExecutable*, JSC::ExecState*, JSC::JSObject*) () at /usr/lib64/libQtWebKit.so.4
#32 0x00007fb1f76eb423 in JSC::evaluate(JSC::ExecState*, JSC::SourceCode const&, JSC::JSValue, JSC::JSValue*) () at /usr/lib64/libQtWebKit.so.4
#33 0x00007fb1f641b93e in WebCore::ScriptController::evaluateInWorld(WebCore::ScriptSourceCode const&, WebCore::DOMWrapperWorld*) () at /usr/lib64/libQtWebKit.so.4
#34 0x00007fb1f641bc63 in WebCore::ScriptController::evaluate(WebCore::ScriptSourceCode const&) () at /usr/lib64/libQtWebKit.so.4
#35 0x00007fb1f6614072 in WebCore::ScriptElement::executeScript(WebCore::ScriptSourceCode const&) () at /usr/lib64/libQtWebKit.so.4
#36 0x00007fb1f67bfad2 in WebCore::HTMLScriptRunner::executePendingScriptAndDispatchEvent(WebCore::PendingScript&) () at /usr/lib64/libQtWebKit.so.4
#37 0x00007fb1f67c017f in WebCore::HTMLScriptRunner::executeParsingBlockingScript() () at /usr/lib64/libQtWebKit.so.4
#38 0x00007fb1f67c0598 in WebCore::HTMLScriptRunner::executeParsingBlockingScripts() () at /usr/lib64/libQtWebKit.so.4
#39 0x00007fb1f67a7628 in WebCore::HTMLDocumentParser::notifyFinished(WebCore::CachedResource*) () at /usr/lib64/libQtWebKit.so.4
#40 0x00007fb1f68e504a in WebCore::CachedResource::checkNotify() () at /usr/lib64/libQtWebKit.so.4
#41 0x00007fb1f694ac7a in WebCore::SubresourceLoader::didFinishLoading(double) () at /usr/lib64/libQtWebKit.so.4
#42 0x00007fb1f6c7df82 in WebCore::QNetworkReplyHandler::finish() () at /usr/lib64/libQtWebKit.so.4
#43 0x00007fb1f6c7dadf in WebCore::QNetworkReplyHandlerCallQueue::flush() [clone .part.56] () at /usr/lib64/libQtWebKit.so.4
#44 0x00007fb1f6c7db2b in WebCore::QNetworkReplyHandlerCallQueue::push(void (WebCore::QNetworkReplyHandler::*)()) () at /usr/lib64/libQtWebKit.so.4
#45 0x00007fb1f6c7db8b in WebCore::QNetworkReplyWrapper::didReceiveFinished() () at /usr/lib64/libQtWebKit.so.4
#46 0x00007fb2037601fa in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () at /usr/lib64/libQtCore.so.4
#47 0x00007fb203754348 in QMetaMethod::invoke(QObject*, Qt::ConnectionType, QGenericReturnArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument) const () at /usr/lib64/libQtCore.so.4
#48 0x00007fb203756802 in QMetaObject::invokeMethod(QObject*, char const*, Qt::ConnectionType, QGenericReturnArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument) () at /usr/lib64/libQtCore.so.4
#49 0x00007fb1fa69670c in  () at /usr/lib64/libkio.so.5
#50 0x00007fb1fa698390 in  () at /usr/lib64/libkio.so.5
#51 0x00007fb2037601fa in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () at /usr/lib64/libQtCore.so.4
#52 0x00007fb203be03e2 in KJob::result(KJob*) () at /usr/lib64/libkdecore.so.5
#53 0x00007fb203be0420 in KJob::emitResult() () at /usr/lib64/libkdecore.so.5
#54 0x00007fb1fa6d221a in KIO::SimpleJob::slotFinished() () at /usr/lib64/libkio.so.5
#55 0x00007fb1fa6d336e in KIO::TransferJob::slotFinished() () at /usr/lib64/libkio.so.5
#56 0x00007fb2037601fa in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () at /usr/lib64/libQtCore.so.4
#57 0x00007fb1fa770c66 in KIO::SlaveInterface::dispatch(int, QByteArray const&) () at /usr/lib64/libkio.so.5
#58 0x00007fb1fa76e78e in KIO::SlaveInterface::dispatch() () at /usr/lib64/libkio.so.5
#59 0x00007fb1fa7634a6 in KIO::Slave::gotInput() () at /usr/lib64/libkio.so.5
#60 0x00007fb2037601fa in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () at /usr/lib64/libQtCore.so.4
#61 0x00007fb1fa6a03f1 in  () at /usr/lib64/libkio.so.5
#62 0x00007fb20376459e in QObject::event(QEvent*) () at /usr/lib64/libQtCore.so.4
#63 0x00007fb2028c976c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib64/libQtGui.so.4
#64 0x00007fb2028cfcad in QApplication::notify(QObject*, QEvent*) () at /usr/lib64/libQtGui.so.4
#65 0x00007fb2044efbda in KApplication::notify(QObject*, QEvent*) () at /usr/lib64/libkdeui.so.5
#66 0x00007fb20374c2ad in QCoreApplication::notifyInternal(QObject*, QEvent*) () at /usr/lib64/libQtCore.so.4
#67 0x00007fb20374f57d in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /usr/lib64/libQtCore.so.4
#68 0x00007fb2037798fe in  () at /usr/lib64/libQtCore.so.4
#69 0x00007fb1ff235a04 in g_main_context_dispatch () at /usr/lib64/libglib-2.0.so.0
#70 0x00007fb1ff235c48 in  () at /usr/lib64/libglib-2.0.so.0
#71 0x00007fb1ff235cec in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#72 0x00007fb2037790be in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#73 0x00007fb202966676 in  () at /usr/lib64/libQtGui.so.4
#74 0x00007fb20374ae6f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#75 0x00007fb20374b165 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#76 0x00007fb2037505b9 in QCoreApplication::exec() () at /usr/lib64/libQtCore.so.4
#77 0x00007fb1ec836c4e in kdemain () at /usr/lib64/libkdeinit4_konqueror.so
#78 0x0000000000408815 in _start ()



Other web browsers (Chromium, Firefox) work fine and I don’t need Konqueror as a file browser since I am using Dolphin for that. (Why is Konqueror installed in Opensuse by default?) I was just trying to see what Konqueror was like since it was already installed. Now I am wondering if there is something else wrong in my setup but maybe the problem is solely with Konqueror and not with KDE. What do you think? Is there something else I should fix? Is this just the tip of an iceberg of problems waiting to wreck my system?

I see the same here I think (I haven’t really compared the backtraces now), but haven’t had the time to investigate and/or file a bug report yet.

This only happens with WebKit though, switch to KHTML and there should not be any crashes.
And it only happens on specific sites (with some particular JavaScript involved maybe?), such as the forum login page (the forum itself works fine).

Strange enough, I don’t get those crashes at all on a different 13.2 system…

Might be interesting to try rekonq e.g. to see whether it is a general problem in libkdewebkit or libQtWebkit4…

(Why is Konqueror installed in Opensuse by default?)

Why not? :wink:
It’s a core part of KDE, and many people know it from KDE3 times, where there weren’t any KDE replacements for it (i.e. dolphin, rekonq).

I did compare them now, and indeed my crashes are the same as yours.

I also found the reason:
The “evince-browser-plugin” causes the crash. If I remove that, the crashes are gone.

I can reproduce this also with rekonq and the demo qt4-browser included in “qt4-x11-tools”, but not with Epiphany (which also uses WebKit) or rekonq5 (the KF5 version of rekonq), so it seems to be a problem in libQtWebKit4.

This is probably bug 901006.
That bug report is not seeing much action. You might want to add a comment.

Do you have Gnome installed?

At present, konqueror is working for me. But that’s because I installed only KDE. Previously, I have installed several desktops.

It looks to me as if there is some weird conflict when Gnome is also installed. Maybe konqueror is loading a Gnome webkit library instead of a KDE library.

Thanks for the link. I wanted to file a bug report anyway.

I will add a comment later…

Do you have Gnome installed?

At present, konqueror is working for me. But that’s because I installed only KDE. Previously, I have installed several desktops.

It looks to me as if there is some weird conflict when Gnome is also installed. Maybe konqueror is loading a Gnome webkit library instead of a KDE library.

As I said, the crash is caused by the evince-browser-plugin, here at least. Since I removed that, I didn’t have a single crash any more.

The crash is in Gtk/Gdk:

#5  0x00007fb17f31b5df in gdk_display_open () at /usr/lib64/libgdk-x11-2.0.so.0
#6  0x00007fb17f2ec5cd in gdk_display_open_default_libgtk_only () at /usr/lib64/libgdk-x11-2.0.so.0
#7  0x00007fb17f6b5ab4 in gtk_init_check () at /usr/lib64/libgtk-x11-2.0.so.0
#8  0x00007fb17f6b5ad9 in gtk_init () at /usr/lib64/libgtk-x11-2.0.so.0
#9  0x00007fb1f6cad09b in WebCore::initializeGtk(QLibrary*) () at /usr/lib64/libQtWebKit.so.4

Thank you for tracking that down.

Well, actually I suspected the java plugin (icedtea), as it is mentioned in the backtrace.
So first thing I tried was to disable plugins altogether and the crash was gone.
Then I removed icedtea and turned on plugins again, but the crash was still there.
So I tried to remove them all one-by-one…