Application: kdevelop (5.0.2) Qt Version: 5.7.0 Frameworks Version: 5.27.0 Operating System: Linux 4.8.6-300.fc25.x86_64 x86_64 Distribution: "Fedora release 25 (Twenty Five)" -- Information about the crash: - What I was doing when the application crashed: Pursuing an unrelated issue, I completely cleared out my home directory. I restored my projects folder and opened a project. The "projects" pane showed my project, but would not open any subdirectories, so I thought I'd close and open it again. Upon clicking "close" kdevelop quit (and plasmashell locked up again--that was the unrelated issue I was trying to fix by clearing all customizations). The crash does not seem to be reproducible. -- Backtrace: Application: KDevelop (kdevelop), signal: Segmentation fault Using host libthread_db library "/lib64/libthread_db.so.1". [Current thread is 1 (Thread 0x7f2d60423940 (LWP 5859))] Thread 10 (Thread 0x7f2d2d5fc700 (LWP 5909)): #0 0x00007f2d73504460 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0 #1 0x00007f2d7aebe09a in QWaitCondition::wait(QMutex*, unsigned long) () at /lib64/libQt5Core.so.5 #2 0x00007f2d77342adb in ThreadWeaver::Weaver::blockThreadUntilJobsAreBeingAssigned(ThreadWeaver::Thread*) () at /lib64/libKF5ThreadWeaver.so.5 #3 0x00007f2d77347c91 in ThreadWeaver::SuspendingState::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5 #4 0x00007f2d773429fd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5 #5 0x00007f2d77347a92 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5 #6 0x00007f2d773429fd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5 #7 0x00007f2d77347a92 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5 #8 0x00007f2d773429fd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5 #9 0x00007f2d773458c9 in ThreadWeaver::Thread::run() () at /lib64/libKF5ThreadWeaver.so.5 #10 0x00007f2d7aebda1a in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5 #11 0x00007f2d734fe6ca in start_thread () at /lib64/libpthread.so.0 #12 0x00007f2d7a2b0f6f in clone () at /lib64/libc.so.6 Thread 9 (Thread 0x7f2d2ddfd700 (LWP 5908)): #0 0x00007f2d73504460 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0 #1 0x00007f2d7aebe09a in QWaitCondition::wait(QMutex*, unsigned long) () at /lib64/libQt5Core.so.5 #2 0x00007f2d77342adb in ThreadWeaver::Weaver::blockThreadUntilJobsAreBeingAssigned(ThreadWeaver::Thread*) () at /lib64/libKF5ThreadWeaver.so.5 #3 0x00007f2d77347df0 in ThreadWeaver::SuspendedState::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5 #4 0x00007f2d773429fd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5 #5 0x00007f2d77347a92 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5 #6 0x00007f2d773429fd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5 #7 0x00007f2d773458c9 in ThreadWeaver::Thread::run() () at /lib64/libKF5ThreadWeaver.so.5 #8 0x00007f2d7aebda1a in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5 #9 0x00007f2d734fe6ca in start_thread () at /lib64/libpthread.so.0 #10 0x00007f2d7a2b0f6f in clone () at /lib64/libc.so.6 Thread 8 (Thread 0x7f2d2e5fe700 (LWP 5907)): #0 0x00007f2d73504460 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0 #1 0x00007f2d7aebe09a in QWaitCondition::wait(QMutex*, unsigned long) () at /lib64/libQt5Core.so.5 #2 0x00007f2d77342adb in ThreadWeaver::Weaver::blockThreadUntilJobsAreBeingAssigned(ThreadWeaver::Thread*) () at /lib64/libKF5ThreadWeaver.so.5 #3 0x00007f2d77347df0 in ThreadWeaver::SuspendedState::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5 #4 0x00007f2d773429fd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5 #5 0x00007f2d77347a92 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5 #6 0x00007f2d773429fd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5 #7 0x00007f2d773458c9 in ThreadWeaver::Thread::run() () at /lib64/libKF5ThreadWeaver.so.5 #8 0x00007f2d7aebda1a in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5 #9 0x00007f2d734fe6ca in start_thread () at /lib64/libpthread.so.0 #10 0x00007f2d7a2b0f6f in clone () at /lib64/libc.so.6 Thread 7 (Thread 0x7f2d2edff700 (LWP 5906)): #0 0x00007f2d73504460 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0 #1 0x00007f2d7aebe09a in QWaitCondition::wait(QMutex*, unsigned long) () at /lib64/libQt5Core.so.5 #2 0x00007f2d77342adb in ThreadWeaver::Weaver::blockThreadUntilJobsAreBeingAssigned(ThreadWeaver::Thread*) () at /lib64/libKF5ThreadWeaver.so.5 #3 0x00007f2d77347df0 in ThreadWeaver::SuspendedState::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5 #4 0x00007f2d773429fd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5 #5 0x00007f2d77347a92 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5 #6 0x00007f2d773429fd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5 #7 0x00007f2d773458c9 in ThreadWeaver::Thread::run() () at /lib64/libKF5ThreadWeaver.so.5 #8 0x00007f2d7aebda1a in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5 #9 0x00007f2d734fe6ca in start_thread () at /lib64/libpthread.so.0 #10 0x00007f2d7a2b0f6f in clone () at /lib64/libc.so.6 Thread 6 (Thread 0x7f2d34e43700 (LWP 5905)): #0 0x00007f2d73504460 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0 #1 0x00007f2d7aebe09a in QWaitCondition::wait(QMutex*, unsigned long) () at /lib64/libQt5Core.so.5 #2 0x00007f2d77342adb in ThreadWeaver::Weaver::blockThreadUntilJobsAreBeingAssigned(ThreadWeaver::Thread*) () at /lib64/libKF5ThreadWeaver.so.5 #3 0x00007f2d77347df0 in ThreadWeaver::SuspendedState::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5 #4 0x00007f2d773429fd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5 #5 0x00007f2d77347a92 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5 #6 0x00007f2d773429fd in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /lib64/libKF5ThreadWeaver.so.5 #7 0x00007f2d773458c9 in ThreadWeaver::Thread::run() () at /lib64/libKF5ThreadWeaver.so.5 #8 0x00007f2d7aebda1a in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5 #9 0x00007f2d734fe6ca in start_thread () at /lib64/libpthread.so.0 #10 0x00007f2d7a2b0f6f in clone () at /lib64/libc.so.6 Thread 5 (Thread 0x7f2d35644700 (LWP 5894)): #0 0x00007f2d6e0a97f9 in g_mutex_lock () at /lib64/libglib-2.0.so.0 #1 0x00007f2d6e0636a6 in g_main_context_prepare () at /lib64/libglib-2.0.so.0 #2 0x00007f2d6e06407b in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0 #3 0x00007f2d6e06426c in g_main_context_iteration () at /lib64/libglib-2.0.so.0 #4 0x00007f2d7b0aad8b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5 #5 0x00007f2d7b05c0ba in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5 #6 0x00007f2d7aeb9643 in QThread::exec() () at /lib64/libQt5Core.so.5 #7 0x00007f2d80116735 in QQmlThreadPrivate::run() () at /lib64/libQt5Qml.so.5 #8 0x00007f2d7aebda1a in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5 #9 0x00007f2d734fe6ca in start_thread () at /lib64/libpthread.so.0 #10 0x00007f2d7a2b0f6f in clone () at /lib64/libc.so.6 Thread 4 (Thread 0x7f2d4598b700 (LWP 5864)): [KCrash Handler] #6 0x00007f2d7aeb5af8 in QMutex::lock() () at /lib64/libQt5Core.so.5 #7 0x00007f2d7aeb6409 in QReadWriteLockPrivate::recursiveLockForWrite(int) () at /lib64/libQt5Core.so.5 #8 0x00007f2d7aeb6d10 in QReadWriteLock::tryLockForWrite(int) () at /lib64/libQt5Core.so.5 #9 0x00007f2d78397e40 in KDevelop::DUChainPrivate::doMoreCleanup(int, KDevelop::DUChainPrivate::LockFlag) () at /lib64/libKDevPlatformLanguage.so.10 #10 0x00007f2d78398c41 in KDevelop::DUChainPrivate::CleanupThread::run() () at /lib64/libKDevPlatformLanguage.so.10 #11 0x00007f2d7aebda1a in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5 #12 0x00007f2d734fe6ca in start_thread () at /lib64/libpthread.so.0 #13 0x00007f2d7a2b0f6f in clone () at /lib64/libc.so.6 Thread 3 (Thread 0x7f2d554ff700 (LWP 5862)): #0 0x00007f2d7a2a500d in poll () at /lib64/libc.so.6 #1 0x00007f2d6e064156 in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0 #2 0x00007f2d6e06426c in g_main_context_iteration () at /lib64/libglib-2.0.so.0 #3 0x00007f2d7b0aad8b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5 #4 0x00007f2d7b05c0ba in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5 #5 0x00007f2d7aeb9643 in QThread::exec() () at /lib64/libQt5Core.so.5 #6 0x00007f2d80dab7a9 in QDBusConnectionManager::run() () at /lib64/libQt5DBus.so.5 #7 0x00007f2d7aebda1a in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5 #8 0x00007f2d734fe6ca in start_thread () at /lib64/libpthread.so.0 #9 0x00007f2d7a2b0f6f in clone () at /lib64/libc.so.6 Thread 2 (Thread 0x7f2d56869700 (LWP 5861)): #0 0x00007f2d7a2a500d in poll () at /lib64/libc.so.6 #1 0x00007f2d6cdeed10 in _xcb_conn_wait () at /lib64/libxcb.so.1 #2 0x00007f2d6cdf0aa9 in xcb_wait_for_event () at /lib64/libxcb.so.1 #3 0x00007f2d59858a19 in QXcbEventReader::run() () at /lib64/libQt5XcbQpa.so.5 #4 0x00007f2d7aebda1a in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5 #5 0x00007f2d734fe6ca in start_thread () at /lib64/libpthread.so.0 #6 0x00007f2d7a2b0f6f in clone () at /lib64/libc.so.6 Thread 1 (Thread 0x7f2d60423940 (LWP 5859)): #0 0x00007f2d7a2aabe9 in syscall () at /lib64/libc.so.6 #1 0x00007f2d7aeb5a75 in QBasicMutex::lockInternal() () at /lib64/libQt5Core.so.5 #2 0x00007f2d7aeb5b32 in QMutex::lock() () at /lib64/libQt5Core.so.5 #3 0x00007f2d78385157 in KDevelop::DUChain::shutdown() () at /lib64/libKDevPlatformLanguage.so.10 #4 0x00007f2d8092b27f in KDevelop::Core::cleanup() () at /lib64/libKDevPlatformShell.so.10 #5 0x00007f2d8092b548 in KDevelop::Core::shutdown() () at /lib64/libKDevPlatformShell.so.10 #6 0x00007f2d8090b465 in KDevelop::MainWindow::~MainWindow() () at /lib64/libKDevPlatformShell.so.10 #7 0x00007f2d8090b4b9 in KDevelop::MainWindow::~MainWindow() () at /lib64/libKDevPlatformShell.so.10 #8 0x00007f2d7b085110 in QObject::event(QEvent*) () at /lib64/libQt5Core.so.5 #9 0x00007f2d7b8ece2b in QWidget::event(QEvent*) () at /lib64/libQt5Widgets.so.5 #10 0x00007f2d7b9eb7cb in QMainWindow::event(QEvent*) () at /lib64/libQt5Widgets.so.5 #11 0x00007f2d7e7607b7 in KMainWindow::event(QEvent*) () at /lib64/libKF5XmlGui.so.5 #12 0x00007f2d7e7a5365 in KXmlGuiWindow::event(QEvent*) () at /lib64/libKF5XmlGui.so.5 #13 0x00007f2d7b8a596c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5 #14 0x00007f2d7b8ad111 in QApplication::notify(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5 #15 0x00007f2d7b05d12a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib64/libQt5Core.so.5 #16 0x00007f2d7b05f800 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /lib64/libQt5Core.so.5 #17 0x00007f2d7b0aacf3 in postEventSourceDispatch(_GSource*, int (*)(void*), void*) () at /lib64/libQt5Core.so.5 #18 0x00007f2d6e063e42 in g_main_context_dispatch () at /lib64/libglib-2.0.so.0 #19 0x00007f2d6e0641c0 in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0 #20 0x00007f2d6e06426c in g_main_context_iteration () at /lib64/libglib-2.0.so.0 #21 0x00007f2d7b0aad6f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5 #22 0x00007f2d7b05c0ba in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5 #23 0x00007f2d7b063bac in QCoreApplication::exec() () at /lib64/libQt5Core.so.5 #24 0x000055c4320969bc in main () Reported using DrKonqi
Would "clearing out your home directory" include removing ~/.cache? If yes, did you close kdevelop before doing that?
Actually, it involved dropping to single user mode, creating a new user with useradd, renaming my home directory to "oldme", renaming the new user directory to what my own home directory should be, chown-ing it to myself, then removing the new user and rebooting. There's probably a better way. But this gave me a completely fresh home folder, but not SO fresh that it didn't have the normal skeleton, and I could copy stuff I could actually identify as "I know what this is" back over. So yes, all that stuff was gone. Upon re-launch, kdevelop said, "Hey, you crashed. Do you want me to ignore the cache?" I said yes. It's been fine since then. Is that the issue? The project file pointing at a non-existent .cache folder?
That doesn't seem right, if your .cache is empty, from my knowledge you shouldn't get the "it crashed" dialog -- the flag for that is stored in the cache. The project file contains no reference to the cache folder. Are you sure you didn't copy over (part of) .cache in the process, maybe even with issues like wrong permissions on the files?
Oh. For clarity. The sequence of events after the new home directory was: Reboot. Rebuild my menu "favorites." Launch kdevelop. Choose a project. Kdevelop goes weird. Boom. Also plasmashell deadlocks. control-alt-f2 kill -HUP X11 Login again Relaunch kdevelop. Everything seems normal again (except the plasmashell deadlocks continue, but that's a different bug).
It's the re-launch where kdevelop detected the crash, and after which everything was okay.
Ah ok, that makes more sense. Thanks for the clarification. Maybe there's an issue when you close a project which is currently being opened or so. Maybe you can reproduce it?
Hmm. If that' it, it's hard to trigger. One interesting thing. I always use "Pick Session." If you open a project, and close the window immediately, the project vanishes from my "Pick Session" list. The initial condition--the one where the project directory and its children appeared, but the child folders didn't have any expando arrows, and kdevelop crashed when I closed it (and then invited me to report it)--doesn't seem to be easy to trigger, either. I tried quitting, deleting the .cache folder, and re-launching, but kdevelop remained happy as a clam. Ordinarily a good thing. Not when attempting to create a recipe for reproducing an error, though. Since plasmashell was locking up at the same time, I'm willing to consider this a secondary crash caused by the first. I see xcb_conn_wait in the backtrace (I know it's involved in the plasmashell problem somehow, but I'm bad at reading backtraces). May we close this, and then if it ever happens to me again, I'll reopen--hopefully with a more well-defined way to reproduce?
Dear Bug Submitter, This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information as soon as possible and set the bug status as REPORTED. Due to regular bug tracker maintenance, if the bug is still in NEEDSINFO status with no change in 30 days, the bug will be closed as RESOLVED > WORKSFORME due to lack of needed information. For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging If you have already provided the requested information, please set the bug status as REPORTED so that the KDE team knows that the bug is ready to be confirmed. Thank you for helping us make KDE software even better for everyone!
Dear Bug Submitter, This bug has been in NEEDSINFO status with no change for at least 30 days. The bug is now closed as RESOLVED > WORKSFORME due to lack of needed information. For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging Thank you for helping us make KDE software even better for everyone!