Bug 372888 - Kdevelop crashes when using sudo ninja install
Summary: Kdevelop crashes when using sudo ninja install
Status: RESOLVED FIXED
Alias: None
Product: kdevelop
Classification: Applications
Component: Build tools: Ninja (show other bugs)
Version: git master
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: kdevelop-bugs-null
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2016-11-24 14:43 UTC by matsjoyce
Modified: 2017-02-16 08:35 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In: 5.1.0


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description matsjoyce 2016-11-24 14:43:19 UTC
Application: kdevelop (5.0.2)
 (Compiled from sources)
Qt Version: 5.7.0
Frameworks Version: 5.28.0
Operating System: Linux 4.8.8-2-ARCH x86_64
Distribution (Platform): Archlinux Packages

-- Information about the crash:
- What I was doing when the application crashed:

Select Install Selection from project menu.

- Custom settings of the application:

Configure project -> Ninja -> Install as root checked (crashes for both sudo and kdesu).

The crash can be reproduced every time.

-- Backtrace:
Application: KDevelop (kdevelop), signal: Segmentation fault
Using host libthread_db library "/usr/lib/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f9f29056800 (LWP 18321))]

Thread 13 (Thread 0x7f9ed70f1700 (LWP 19952)):
#0  0x00007f9f1f73410f in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f9f17972ac4 in  () at /usr/lib/libQt5Script.so.5
#2  0x00007f9f17972b09 in  () at /usr/lib/libQt5Script.so.5
#3  0x00007f9f1f72e454 in start_thread () at /usr/lib/libpthread.so.0
#4  0x00007f9f25e6b7df in clone () at /usr/lib/libc.so.6

Thread 12 (Thread 0x7f9ec3fff700 (LWP 18447)):
#0  0x00007f9f1f73410f in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f9f26556c2b in QWaitCondition::wait(QMutex*, unsigned long) () at /usr/lib/libQt5Core.so.5
#2  0x00007f9f1ae4e1c0 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () at /usr/lib/libKF5ThreadWeaver.so.5
#3  0x00007f9f1ae52988 in  () at /usr/lib/libKF5ThreadWeaver.so.5
#4  0x00007f9f1ae4d263 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib/libKF5ThreadWeaver.so.5
#5  0x00007f9f1ae529e2 in  () at /usr/lib/libKF5ThreadWeaver.so.5
#6  0x00007f9f1ae4d263 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib/libKF5ThreadWeaver.so.5
#7  0x00007f9f1ae529e2 in  () at /usr/lib/libKF5ThreadWeaver.so.5
#8  0x00007f9f1ae4d263 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib/libKF5ThreadWeaver.so.5
#9  0x00007f9f1ae529e2 in  () at /usr/lib/libKF5ThreadWeaver.so.5
#10 0x00007f9f1ae4d263 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib/libKF5ThreadWeaver.so.5
#11 0x00007f9f1ae529e2 in  () at /usr/lib/libKF5ThreadWeaver.so.5
#12 0x00007f9f1ae4d263 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib/libKF5ThreadWeaver.so.5
#13 0x00007f9f1ae501f9 in ThreadWeaver::Thread::run() () at /usr/lib/libKF5ThreadWeaver.so.5
#14 0x00007f9f26555d78 in  () at /usr/lib/libQt5Core.so.5
#15 0x00007f9f1f72e454 in start_thread () at /usr/lib/libpthread.so.0
#16 0x00007f9f25e6b7df in clone () at /usr/lib/libc.so.6

Thread 11 (Thread 0x7f9ed4e87700 (LWP 18446)):
#0  0x00007f9f1f73410f in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f9f26556c2b in QWaitCondition::wait(QMutex*, unsigned long) () at /usr/lib/libQt5Core.so.5
#2  0x00007f9f1ae4e1c0 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () at /usr/lib/libKF5ThreadWeaver.so.5
#3  0x00007f9f1ae52988 in  () at /usr/lib/libKF5ThreadWeaver.so.5
#4  0x00007f9f1ae4d263 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib/libKF5ThreadWeaver.so.5
#5  0x00007f9f1ae529e2 in  () at /usr/lib/libKF5ThreadWeaver.so.5
#6  0x00007f9f1ae4d263 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib/libKF5ThreadWeaver.so.5
#7  0x00007f9f1ae529e2 in  () at /usr/lib/libKF5ThreadWeaver.so.5
#8  0x00007f9f1ae4d263 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib/libKF5ThreadWeaver.so.5
#9  0x00007f9f1ae501f9 in ThreadWeaver::Thread::run() () at /usr/lib/libKF5ThreadWeaver.so.5
#10 0x00007f9f26555d78 in  () at /usr/lib/libQt5Core.so.5
#11 0x00007f9f1f72e454 in start_thread () at /usr/lib/libpthread.so.0
#12 0x00007f9f25e6b7df in clone () at /usr/lib/libc.so.6

Thread 10 (Thread 0x7f9ed5688700 (LWP 18445)):
#0  0x00007f9f1f73410f in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f9f26556c2b in QWaitCondition::wait(QMutex*, unsigned long) () at /usr/lib/libQt5Core.so.5
#2  0x00007f9f1ae4e1c0 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () at /usr/lib/libKF5ThreadWeaver.so.5
#3  0x00007f9f1ae52988 in  () at /usr/lib/libKF5ThreadWeaver.so.5
#4  0x00007f9f1ae4d263 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib/libKF5ThreadWeaver.so.5
#5  0x00007f9f1ae501f9 in ThreadWeaver::Thread::run() () at /usr/lib/libKF5ThreadWeaver.so.5
#6  0x00007f9f26555d78 in  () at /usr/lib/libQt5Core.so.5
#7  0x00007f9f1f72e454 in start_thread () at /usr/lib/libpthread.so.0
#8  0x00007f9f25e6b7df in clone () at /usr/lib/libc.so.6

Thread 9 (Thread 0x7f9ed5e89700 (LWP 18444)):
#0  0x00007f9f1f73410f in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f9f26556c2b in QWaitCondition::wait(QMutex*, unsigned long) () at /usr/lib/libQt5Core.so.5
#2  0x00007f9f1ae4e1c0 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () at /usr/lib/libKF5ThreadWeaver.so.5
#3  0x00007f9f1ae52988 in  () at /usr/lib/libKF5ThreadWeaver.so.5
#4  0x00007f9f1ae4d263 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib/libKF5ThreadWeaver.so.5
#5  0x00007f9f1ae529e2 in  () at /usr/lib/libKF5ThreadWeaver.so.5
#6  0x00007f9f1ae4d263 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib/libKF5ThreadWeaver.so.5
#7  0x00007f9f1ae501f9 in ThreadWeaver::Thread::run() () at /usr/lib/libKF5ThreadWeaver.so.5
#8  0x00007f9f26555d78 in  () at /usr/lib/libQt5Core.so.5
#9  0x00007f9f1f72e454 in start_thread () at /usr/lib/libpthread.so.0
#10 0x00007f9f25e6b7df in clone () at /usr/lib/libc.so.6

Thread 8 (Thread 0x7f9ed668a700 (LWP 18443)):
#0  0x00007f9f1f73410f in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f9f26556c2b in QWaitCondition::wait(QMutex*, unsigned long) () at /usr/lib/libQt5Core.so.5
#2  0x00007f9f1ae4e1c0 in ThreadWeaver::Weaver::takeFirstAvailableJobOrSuspendOrWait(ThreadWeaver::Thread*, bool, bool, bool) () at /usr/lib/libKF5ThreadWeaver.so.5
#3  0x00007f9f1ae52988 in  () at /usr/lib/libKF5ThreadWeaver.so.5
#4  0x00007f9f1ae4d263 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib/libKF5ThreadWeaver.so.5
#5  0x00007f9f1ae529e2 in  () at /usr/lib/libKF5ThreadWeaver.so.5
#6  0x00007f9f1ae4d263 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib/libKF5ThreadWeaver.so.5
#7  0x00007f9f1ae529e2 in  () at /usr/lib/libKF5ThreadWeaver.so.5
#8  0x00007f9f1ae4d263 in ThreadWeaver::Weaver::applyForWork(ThreadWeaver::Thread*, bool) () at /usr/lib/libKF5ThreadWeaver.so.5
#9  0x00007f9f1ae501f9 in ThreadWeaver::Thread::run() () at /usr/lib/libKF5ThreadWeaver.so.5
#10 0x00007f9f26555d78 in  () at /usr/lib/libQt5Core.so.5
#11 0x00007f9f1f72e454 in start_thread () at /usr/lib/libpthread.so.0
#12 0x00007f9f25e6b7df in clone () at /usr/lib/libc.so.6

Thread 7 (Thread 0x7f9ede526700 (LWP 18420)):
#0  0x00007f9f1d7159b0 in poll@plt () at /usr/lib/libglib-2.0.so.0
#1  0x00007f9f1d745786 in  () at /usr/lib/libglib-2.0.so.0
#2  0x00007f9f1d74589c in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#3  0x00007f9f2678472b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#4  0x00007f9f2672e23a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#5  0x00007f9f265510f3 in QThread::exec() () at /usr/lib/libQt5Core.so.5
#6  0x00007f9f26555d78 in  () at /usr/lib/libQt5Core.so.5
#7  0x00007f9f1f72e454 in start_thread () at /usr/lib/libpthread.so.0
#8  0x00007f9f25e6b7df in clone () at /usr/lib/libc.so.6

Thread 6 (Thread 0x7f9eded27700 (LWP 18358)):
#0  0x00007f9f25e5e4ed in read () at /usr/lib/libc.so.6
#1  0x00007f9f1d789a10 in  () at /usr/lib/libglib-2.0.so.0
#2  0x00007f9f1d745235 in g_main_context_check () at /usr/lib/libglib-2.0.so.0
#3  0x00007f9f1d745724 in  () at /usr/lib/libglib-2.0.so.0
#4  0x00007f9f1d74589c in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#5  0x00007f9f2678472b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#6  0x00007f9f2672e23a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#7  0x00007f9f265510f3 in QThread::exec() () at /usr/lib/libQt5Core.so.5
#8  0x00007f9f1b8022d5 in  () at /usr/lib/libQt5Qml.so.5
#9  0x00007f9f26555d78 in  () at /usr/lib/libQt5Core.so.5
#10 0x00007f9f1f72e454 in start_thread () at /usr/lib/libpthread.so.0
#11 0x00007f9f25e6b7df in clone () at /usr/lib/libc.so.6

Thread 5 (Thread 0x7f9ee5dfb700 (LWP 18335)):
#0  0x00007f9f25e62479 in poll () at /usr/lib/libc.so.6
#1  0x00007f9f1d745786 in  () at /usr/lib/libglib-2.0.so.0
#2  0x00007f9f1d74589c in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#3  0x00007f9f2678472b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#4  0x00007f9f2672e23a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#5  0x00007f9f265510f3 in QThread::exec() () at /usr/lib/libQt5Core.so.5
#6  0x00007f9f24030aef in  () at /usr/lib/libKDevPlatformLanguage.so.10
#7  0x00007f9f26555d78 in  () at /usr/lib/libQt5Core.so.5
#8  0x00007f9f1f72e454 in start_thread () at /usr/lib/libpthread.so.0
#9  0x00007f9f25e6b7df in clone () at /usr/lib/libc.so.6

Thread 4 (Thread 0x7f9ef627d700 (LWP 18329)):
#0  0x00007f9f1f7344b8 in pthread_cond_timedwait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f9f26556b66 in QWaitCondition::wait(QMutex*, unsigned long) () at /usr/lib/libQt5Core.so.5
#2  0x00007f9f23f2d408 in  () at /usr/lib/libKDevPlatformLanguage.so.10
#3  0x00007f9f26555d78 in  () at /usr/lib/libQt5Core.so.5
#4  0x00007f9f1f72e454 in start_thread () at /usr/lib/libpthread.so.0
#5  0x00007f9f25e6b7df in clone () at /usr/lib/libc.so.6

Thread 3 (Thread 0x7f9f05efe700 (LWP 18324)):
#0  0x00007f9f25e5e4ed in read () at /usr/lib/libc.so.6
#1  0x00007f9f1d789a10 in  () at /usr/lib/libglib-2.0.so.0
#2  0x00007f9f1d745235 in g_main_context_check () at /usr/lib/libglib-2.0.so.0
#3  0x00007f9f1d745724 in  () at /usr/lib/libglib-2.0.so.0
#4  0x00007f9f1d74589c in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#5  0x00007f9f2678472b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#6  0x00007f9f2672e23a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#7  0x00007f9f265510f3 in QThread::exec() () at /usr/lib/libQt5Core.so.5
#8  0x00007f9f2827ee55 in  () at /usr/lib/libQt5DBus.so.5
#9  0x00007f9f26555d78 in  () at /usr/lib/libQt5Core.so.5
#10 0x00007f9f1f72e454 in start_thread () at /usr/lib/libpthread.so.0
#11 0x00007f9f25e6b7df in clone () at /usr/lib/libc.so.6

Thread 2 (Thread 0x7f9f078a8700 (LWP 18322)):
#0  0x00007f9f25e6248d in poll () at /usr/lib/libc.so.6
#1  0x00007f9f163b98e0 in  () at /usr/lib/libxcb.so.1
#2  0x00007f9f163bb679 in xcb_wait_for_event () at /usr/lib/libxcb.so.1
#3  0x00007f9f097e9449 in  () at /usr/lib/libQt5XcbQpa.so.5
#4  0x00007f9f26555d78 in  () at /usr/lib/libQt5Core.so.5
#5  0x00007f9f1f72e454 in start_thread () at /usr/lib/libpthread.so.0
#6  0x00007f9f25e6b7df in clone () at /usr/lib/libc.so.6

Thread 1 (Thread 0x7f9f29056800 (LWP 18321)):
[KCrash Handler]
#6  0x0000000000000000 in  ()
#7  0x00007f9f2877142a in  () at /usr/lib/libKDevPlatformUtil.so.10
#8  0x00007f9f287725d1 in KDevelop::ExecuteCompositeJob::slotResult(KJob*) () at /usr/lib/libKDevPlatformUtil.so.10
#9  0x00007f9f2877e610 in  () at /usr/lib/libKDevPlatformUtil.so.10
#10 0x00007f9f2675b659 in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib/libQt5Core.so.5
#11 0x00007f9f27b55562 in KJob::result(KJob*, KJob::QPrivateSignal) () at /usr/lib/libKF5CoreAddons.so.5
#12 0x00007f9f27b56ed1 in KJob::finishJob(bool) () at /usr/lib/libKF5CoreAddons.so.5
#13 0x00007f9f17c99a89 in KDevelop::OutputExecuteJob::childProcessExited(int, QProcess::ExitStatus) () at /usr/lib/libKDevPlatformOutputView.so.10
#14 0x00007f9f2675b9ce in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib/libQt5Core.so.5
#15 0x00007f9f26662e3f in QProcess::finished(int, QProcess::ExitStatus) () at /usr/lib/libQt5Core.so.5
#16 0x00007f9f2666afc3 in  () at /usr/lib/libQt5Core.so.5
#17 0x00007f9f2666b129 in  () at /usr/lib/libQt5Core.so.5
#18 0x00007f9f2675b659 in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib/libQt5Core.so.5
#19 0x00007f9f267d5dfe in QSocketNotifier::activated(int, QSocketNotifier::QPrivateSignal) () at /usr/lib/libQt5Core.so.5
#20 0x00007f9f26768302 in QSocketNotifier::event(QEvent*) () at /usr/lib/libQt5Core.so.5
#21 0x00007f9f2740fe0c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#22 0x00007f9f27417581 in QApplication::notify(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#23 0x00007f9f2672fde0 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/libQt5Core.so.5
#24 0x00007f9f26784bbd in  () at /usr/lib/libQt5Core.so.5
#25 0x00007f9f1d745587 in g_main_context_dispatch () at /usr/lib/libglib-2.0.so.0
#26 0x00007f9f1d7457f0 in  () at /usr/lib/libglib-2.0.so.0
#27 0x00007f9f1d74589c in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#28 0x00007f9f2678470f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#29 0x00007f9f2672e23a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#30 0x00007f9f2673673c in QCoreApplication::exec() () at /usr/lib/libQt5Core.so.5
#31 0x000000000040baac in  ()
#32 0x00007f9f25da3291 in __libc_start_main () at /usr/lib/libc.so.6
#33 0x000000000040c0ea in _start ()

Reported using DrKonqi
Comment 1 Kevin Funk 2017-02-15 22:21:34 UTC
Confirmed
Comment 2 Kevin Funk 2017-02-16 08:34:09 UTC
There's been a related problem in the make builder, see:
  https://git.reviewboard.kde.org/r/129130/
Comment 3 Kevin Funk 2017-02-16 08:35:33 UTC
Git commit e464a4a9790a659e9d0274516af295a11c965872 by Kevin Funk.
Committed on 16/02/2017 at 08:35.
Pushed by kfunk into branch '5.1'.

ninjabuilder: Don't crash on `sudo ninja install`

Similar patch as done for the make builder, see:
  https://git.reviewboard.kde.org/r/129130/
FIXED-IN: 5.1.0

M  +7    -6    projectbuilders/ninjabuilder/kdevninjabuilderplugin.cpp
M  +5    -4    projectbuilders/ninjabuilder/kdevninjabuilderplugin.h
M  +8    -1    projectbuilders/ninjabuilder/ninjajob.cpp
M  +16   -3    projectbuilders/ninjabuilder/ninjajob.h

https://commits.kde.org/kdevelop/e464a4a9790a659e9d0274516af295a11c965872