Bug 401450 - KDevelop hangs when opened (stacktrace attached)
Summary: KDevelop hangs when opened (stacktrace attached)
Status: RESOLVED DUPLICATE of bug 423818
Alias: None
Product: frameworks-kcoreaddons
Classification: Frameworks and Libraries
Component: general (show other bugs)
Version: 5.52.0
Platform: Neon Linux
: NOR crash
Target Milestone: ---
Assignee: Michael Pyne
URL:
Keywords: drkonqi
: 400984 410731 (view as bug list)
Depends on:
Blocks:
 
Reported: 2018-11-26 22:52 UTC by rgoomes
Modified: 2020-09-08 08:32 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description rgoomes 2018-11-26 22:52:23 UTC
Application: kdevelop (5.3.0)

Qt Version: 5.11.2
Frameworks Version: 5.52.0
Operating System: Linux 4.15.0-39-generic x86_64
Distribution: KDE neon User Edition 5.14

-- Information about the crash:
- What I was doing when the application crashed: The crash was forced with SIGBUS to check the stacktrace. The UI is unresponsive for more than 1 minute and there is no sign of CPU nor IO usage in KSysGuard. The stack of Thread 1 is strange, something about fam but I don't have it installed and why the nanosleep. Also, clicking clear cache in the window that appears after opening KDevelop fixes the problem. This window shows because I forced a crash in the first time I replicated this problem.

This problem happens sometimes but I can replicate it always everytime I reach this kind of state in KDevelop or until I clear the cache.

The crash can be reproduced sometimes.

-- Backtrace:
Application: KDevelop (kdevelop), signal: Bus error
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f3e7dca2bc0 (LWP 3767))]

Thread 7 (Thread 0x7f3e2bfff700 (LWP 3784)):
#0  0x00007f3e7a2fbbf9 in __GI___poll (fds=0x7f3e20003fe0, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f3e70f65539 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f3e70f6564c in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f3e7ac3604b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f3e7abda30a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f3e7aa05bba in QThread::exec() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f3e7910eeef in KDevelop::CompletionWorkerThread::run() (this=0x561c70d2fa70) at ./kdevplatform/language/codecompletion/codecompletionmodel.cpp:79
#7  0x00007f3e7aa10adb in  () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00007f3e731006db in start_thread (arg=0x7f3e2bfff700) at pthread_create.c:463
#9  0x00007f3e7a30888f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 6 (Thread 0x7f3e2b7fe700 (LWP 3779)):
#0  0x00007f3e731069f3 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x7f3e1fb7e110) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  0x00007f3e731069f3 in __pthread_cond_wait_common (abstime=0x0, mutex=0x561c70bdc300, cond=0x7f3e1fb7e0e8) at pthread_cond_wait.c:502
#2  0x00007f3e731069f3 in __pthread_cond_wait (cond=0x7f3e1fb7e0e8, mutex=0x561c70bdc300) at pthread_cond_wait.c:655
#3  0x00007f3e7a68f79c in std::condition_variable::wait(std::unique_lock<std::mutex>&) () at /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#4  0x00007f3e1ee90217 in  () at /usr/lib/x86_64-linux-gnu/libQt5WebKit.so.5
#5  0x00007f3e1ee90359 in  () at /usr/lib/x86_64-linux-gnu/libQt5WebKit.so.5
#6  0x00007f3e7a69557f in  () at /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#7  0x00007f3e731006db in start_thread (arg=0x7f3e2b7fe700) at pthread_create.c:463
#8  0x00007f3e7a30888f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 5 (Thread 0x7f3e31107700 (LWP 3775)):
#0  0x00007f3e7a3176ff in __libc_enable_asynccancel () at ../sysdeps/unix/sysv/linux/x86_64/cancellation.S:67
#1  0x00007f3e7a2fbbe6 in __GI___poll (fds=0x7f3e24003ce0, nfds=1, timeout=10035) at ../sysdeps/unix/sysv/linux/poll.c:29
#2  0x00007f3e70f65539 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f3e70f6564c in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f3e7ac3604b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f3e7abda30a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f3e7aa05bba in QThread::exec() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00007f3e7aa10adb in  () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00007f3e731006db in start_thread (arg=0x7f3e31107700) at pthread_create.c:463
#9  0x00007f3e7a30888f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 4 (Thread 0x7f3e32c93700 (LWP 3774)):
#0  0x00007f3e7aa0fa62 in  () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#1  0x00007f3e7ac35f4a in  () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#2  0x00007f3e70f64a98 in g_main_context_prepare () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f3e70f6546b in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f3e70f6564c in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007f3e7ac3604b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f3e7abda30a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00007f3e7aa05bba in QThread::exec() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00007f3e79007a3b in KDevelop::DUChainPrivate::CleanupThread::run() (this=0x561c70b182c0) at ./kdevplatform/language/duchain/duchain.cpp:286
#9  0x00007f3e7aa10adb in  () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#10 0x00007f3e731006db in start_thread (arg=0x7f3e32c93700) at pthread_create.c:463
#11 0x00007f3e7a30888f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7f3e3ff38700 (LWP 3770)):
#0  0x00007f3e7a2f70b4 in __GI___libc_read (fd=8, buf=0x7f3e3ff377a0, nbytes=16) at ../sysdeps/unix/sysv/linux/read.c:27
#1  0x00007f3e70fa9cd0 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f3e70f65027 in g_main_context_check () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f3e70f654e0 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f3e70f6564c in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007f3e7ac3604b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f3e7abda30a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00007f3e7aa05bba in QThread::exec() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00007f3e7bd04e45 in  () at /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5
#9  0x00007f3e7aa10adb in  () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#10 0x00007f3e731006db in start_thread (arg=0x7f3e3ff38700) at pthread_create.c:463
#11 0x00007f3e7a30888f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7f3e49b9e700 (LWP 3769)):
#0  0x00007f3e7a2fbbf9 in __GI___poll (fds=0x7f3e49b9d8e8, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f3e66308747 in  () at /usr/lib/x86_64-linux-gnu/libxcb.so.1
#2  0x00007f3e6630a36a in xcb_wait_for_event () at /usr/lib/x86_64-linux-gnu/libxcb.so.1
#3  0x00007f3e4b8a2ed9 in  () at /usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#4  0x00007f3e7aa10adb in  () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f3e731006db in start_thread (arg=0x7f3e49b9e700) at pthread_create.c:463
#6  0x00007f3e7a30888f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7f3e7dca2bc0 (LWP 3767)):
[KCrash Handler]
#6  0x00007f3e7a2cb9d0 in __GI___nanosleep (requested_time=0x7ffc2f7886b0, remaining=0x7ffc2f7886b0) at ../sysdeps/unix/sysv/linux/nanosleep.c:28
#7  0x00007f3e7ac359ad in  () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00007f3e7b2df8d8 in KDirWatchPrivate::useFAM(KDirWatchPrivate::Entry*) (this=this@entry=0x561c70800ae0, e=e@entry=0x561c739f2650) at ./src/lib/io/kdirwatch.cpp:688
#9  0x00007f3e7b2dfd4b in KDirWatchPrivate::addWatch(KDirWatchPrivate::Entry*) (this=this@entry=0x561c70800ae0, e=e@entry=0x561c739f2650) at ./src/lib/io/kdirwatch.cpp:976
#10 0x00007f3e7b2e0425 in KDirWatchPrivate::addEntry(KDirWatch*, QString const&, KDirWatchPrivate::Entry*, bool, QFlags<KDirWatch::WatchMode>) (this=this@entry=0x561c70800ae0, instance=instance@entry=0x561c7393f860, _path=..., sub_entry=<optimized out>, sub_entry@entry=0x0, isDir=isDir@entry=true, watchModes=...) at ./src/lib/io/kdirwatch.cpp:933
#11 0x00007f3e7b2e0aa0 in KDirWatchPrivate::addEntry(KDirWatch*, QString const&, KDirWatchPrivate::Entry*, bool, QFlags<KDirWatch::WatchMode>) (this=this@entry=0x561c70800ae0, instance=instance@entry=0x561c7393f860, _path=..., sub_entry=<optimized out>, sub_entry@entry=0x0, isDir=isDir@entry=true, watchModes=...) at ./src/lib/io/kdirwatch.cpp:928
#12 0x00007f3e7b2e0aa0 in KDirWatchPrivate::addEntry(KDirWatch*, QString const&, KDirWatchPrivate::Entry*, bool, QFlags<KDirWatch::WatchMode>) (this=this@entry=0x561c70800ae0, instance=instance@entry=0x561c7393f860, _path=..., sub_entry=<optimized out>, sub_entry@entry=0x0, isDir=isDir@entry=true, watchModes=...) at ./src/lib/io/kdirwatch.cpp:928
#13 0x00007f3e7b2e0aa0 in KDirWatchPrivate::addEntry(KDirWatch*, QString const&, KDirWatchPrivate::Entry*, bool, QFlags<KDirWatch::WatchMode>) (this=this@entry=0x561c70800ae0, instance=instance@entry=0x561c7393f860, _path=..., sub_entry=<optimized out>, sub_entry@entry=0x0, isDir=isDir@entry=true, watchModes=...) at ./src/lib/io/kdirwatch.cpp:928
#14 0x00007f3e7b2e0aa0 in KDirWatchPrivate::addEntry(KDirWatch*, QString const&, KDirWatchPrivate::Entry*, bool, QFlags<KDirWatch::WatchMode>) (this=this@entry=0x561c70800ae0, instance=instance@entry=0x561c7393f860, _path=..., sub_entry=<optimized out>, sub_entry@entry=0x0, isDir=isDir@entry=true, watchModes=...) at ./src/lib/io/kdirwatch.cpp:928
#15 0x00007f3e7b2e0aa0 in KDirWatchPrivate::addEntry(KDirWatch*, QString const&, KDirWatchPrivate::Entry*, bool, QFlags<KDirWatch::WatchMode>) (this=this@entry=0x561c70800ae0, instance=instance@entry=0x561c7393f860, _path=..., sub_entry=<optimized out>, sub_entry@entry=0x0, isDir=isDir@entry=true, watchModes=...) at ./src/lib/io/kdirwatch.cpp:928
#16 0x00007f3e7b2e0aa0 in KDirWatchPrivate::addEntry(KDirWatch*, QString const&, KDirWatchPrivate::Entry*, bool, QFlags<KDirWatch::WatchMode>) (this=this@entry=0x561c70800ae0, instance=instance@entry=0x561c7393f860, _path=..., sub_entry=<optimized out>, sub_entry@entry=0x0, isDir=isDir@entry=true, watchModes=...) at ./src/lib/io/kdirwatch.cpp:928
#17 0x00007f3e7b2e0aa0 in KDirWatchPrivate::addEntry(KDirWatch*, QString const&, KDirWatchPrivate::Entry*, bool, QFlags<KDirWatch::WatchMode>) (this=0x561c70800ae0, instance=instance@entry=0x561c7393f860, _path=..., sub_entry=<optimized out>, sub_entry@entry=0x0, isDir=isDir@entry=true, watchModes=...) at ./src/lib/io/kdirwatch.cpp:928
#18 0x00007f3e7b2e22b2 in KDirWatch::addDir(QString const&, QFlags<KDirWatch::WatchMode>) (this=this@entry=0x561c7393f860, _path=..., watchModes=..., watchModes@entry=...) at ./src/lib/io/kdirwatch.cpp:1891
#19 0x00007f3e78ad6a89 in KDevelop::AbstractFileManagerPlugin::import(KDevelop::IProject*) (this=0x561c73447760, project=<optimized out>) at ./kdevplatform/project/abstractfilemanagerplugin.cpp:497
#20 0x00007f3e7d80a7d4 in KDevelop::ProjectPrivate::importTopItem(KDevelop::IProjectFileManager*) (fileManager=<optimized out>, this=0x561c72e43870) at ./kdevplatform/shell/project.cpp:399
#21 0x00007f3e7d80a7d4 in KDevelop::Project::open(KDevelop::Path const&) (this=this@entry=0x561c73438200, projectFile=...) at ./kdevplatform/shell/project.cpp:510
#22 0x00007f3e7d806c9e in KDevelop::ProjectControllerPrivate::importProject(QUrl const&) (this=0x561c7096b940, url_=...) at ./kdevplatform/shell/projectcontroller.cpp:343
#23 0x00007f3e7d7fe5b5 in KDevelop::ProjectController::openProject(QUrl const&) (this=<optimized out>, projectFile=...) at ./kdevplatform/shell/projectcontroller.cpp:873
#24 0x00007f3e7d7f908c in KDevelop::ProjectController::openProjects(QList<QUrl> const&) (this=0x561c70937be0, projects=...) at ./kdevplatform/shell/projectcontroller.cpp:691
#25 0x00007f3e7d7f949a in KDevelop::ProjectController::<lambda()>::operator() (__closure=0x561c70b09c30) at ./kdevplatform/shell/projectcontroller.cpp:683
#26 0x00007f3e7d7f949a in QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, KDevelop::ProjectController::initialize()::<lambda()> >::call (arg=<optimized out>, f=...) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:128
#27 0x00007f3e7d7f949a in QtPrivate::Functor<KDevelop::ProjectController::initialize()::<lambda()>, 0>::call<QtPrivate::List<>, void> (arg=<optimized out>, f=...) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:238
#28 0x00007f3e7d7f949a in QtPrivate::QFunctorSlotObject<KDevelop::ProjectController::initialize()::<lambda()>, 0, QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void **, bool *) (which=<optimized out>, this_=0x561c70b09c20, r=<optimized out>, a=<optimized out>, ret=<optimized out>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:421
#29 0x00007f3e7ac17ef4 in  () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#30 0x00007f3e7ac0bb9b in QObject::event(QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#31 0x00007f3e7c338e1c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#32 0x00007f3e7c3403ef in QApplication::notify(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#33 0x00007f3e7abdbfe8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#34 0x00007f3e7ac354be in QTimerInfoList::activateTimers() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#35 0x00007f3e7ac35c81 in  () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#36 0x00007f3e70f65387 in g_main_context_dispatch () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#37 0x00007f3e70f655c0 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#38 0x00007f3e70f6564c in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#39 0x00007f3e7ac3602f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#40 0x00007f3e4b92e761 in  () at /usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#41 0x00007f3e7abda30a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#42 0x00007f3e7abe34d0 in QCoreApplication::exec() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#43 0x0000561c6f018190 in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at ./app/main.cpp:849

Reported using DrKonqi
Comment 1 Friedrich W. H. Kossebau 2019-10-11 11:52:32 UTC
Seems an issue with KDirWatch, compare also bug 389781 and bug 400583, so moving to KCoreAddons.

Is your $HOME by any chance remotely mounted, like by NFS? What filesystem(s) do you use for your project and the cache location?
Comment 2 rgoomes 2019-10-11 13:10:41 UTC
(In reply to Friedrich W. H. Kossebau from comment #1)
> Seems an issue with KDirWatch, compare also bug 389781 and bug 400583, so
> moving to KCoreAddons.
> 
> Is your $HOME by any chance remotely mounted, like by NFS? What
> filesystem(s) do you use for your project and the cache location?

No, normal filesystem setup. The filesystem is ext4.

Output of df -T:
Filesystem     Type     1K-blocks      Used Available Use% Mounted on
udev           devtmpfs   8114012         0   8114012   0% /dev
tmpfs          tmpfs      1629952      1632   1628320   1% /run
/dev/nvme0n1p6 ext4     205375464 182343928  12529392  94% /
tmpfs          tmpfs      8149740    255284   7894456   4% /dev/shm
tmpfs          tmpfs         5120         4      5116   1% /run/lock
tmpfs          tmpfs      8149740         0   8149740   0% /sys/fs/cgroup
/dev/loop0     squashfs     91264     91264         0 100% /snap/core/7713
/dev/nvme0n1p1 vfat        364544     85856    278688  24% /boot/efi
tmpfs          tmpfs      1629948        28   1629920   1% /run/user/1000
/dev/loop2     squashfs     91264     91264         0 100% /snap/core/7917
Comment 3 Harald Sitter 2020-09-06 21:03:07 UTC

*** This bug has been marked as a duplicate of bug 423818 ***
Comment 4 rgoomes 2020-09-08 08:29:26 UTC
*** Bug 400984 has been marked as a duplicate of this bug. ***
Comment 5 rgoomes 2020-09-08 08:32:48 UTC
*** Bug 410731 has been marked as a duplicate of this bug. ***