https://bugs.kde.org/show_bug.cgi?id=417807

            Bug ID: 417807
           Summary: kwin crash after external monitor turned off and on
                    again
           Product: kwin
           Version: 5.18.0
          Platform: unspecified
                OS: Linux
            Status: REPORTED
          Keywords: drkonqi
          Severity: crash
          Priority: NOR
         Component: general
          Assignee: kwin-bugs-n...@kde.org
          Reporter: t...@tim-richardson.net
  Target Milestone: ---

Application: kwin_x11 (5.18.0)

Qt Version: 5.14.1
Frameworks Version: 5.67.0
Operating System: Linux 5.3.18-customrc6 x86_64
Windowing system: X11
Distribution: KDE neon User Edition 5.18

-- Information about the crash:
- What I was doing when the application crashed:
external monitor was turned off and then turned on again. The physical
connection did not change.

The crash can be reproduced sometimes.

-- Backtrace:
Application: KWin (kwin_x11), signal: Segmentation fault
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f734948ee80 (LWP 3955))]

Thread 7 (Thread 0x7f730bfff700 (LWP 5624)):
#0  0x00007f7341d699f3 in futex_wait_cancelable (private=<optimized out>,
expected=0, futex_word=0x55c63af658b0) at
../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  0x00007f7341d699f3 in __pthread_cond_wait_common (abstime=0x0,
mutex=0x55c63af65860, cond=0x55c63af65888) at pthread_cond_wait.c:502
#2  0x00007f7341d699f3 in __pthread_cond_wait (cond=0x55c63af65888,
mutex=0x55c63af65860) at pthread_cond_wait.c:655
#3  0x00007f7345d5dd9b in QWaitConditionPrivate::wait(QDeadlineTimer)
(deadline=..., this=0x55c63af65860) at thread/qwaitcondition_unix.cpp:146
#4  0x00007f7345d5dd9b in QWaitCondition::wait(QMutex*, QDeadlineTimer)
(this=<optimized out>, mutex=0x55c63ac05c90, deadline=...) at
thread/qwaitcondition_unix.cpp:225
#5  0x00007f7345d5df19 in QWaitCondition::wait(QMutex*, unsigned long)
(this=this@entry=0x55c63ac05c98, mutex=mutex@entry=0x55c63ac05c90,
time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:208
#6  0x00007f7340e911d3 in QSGRenderThreadEventQueue::takeEvent(bool)
(wait=true, this=0x55c63ac05c88) at scenegraph/qsgthreadedrenderloop.cpp:255
#7  0x00007f7340e911d3 in QSGRenderThread::processEventsAndWaitForMore()
(this=this@entry=0x55c63ac05bf0) at scenegraph/qsgthreadedrenderloop.cpp:905
#8  0x00007f7340e91631 in QSGRenderThread::run() (this=0x55c63ac05bf0) at
scenegraph/qsgthreadedrenderloop.cpp:1000
#9  0x00007f7345d577ec in QThreadPrivate::start(void*) (arg=0x55c63ac05bf0) at
thread/qthread_unix.cpp:342
#10 0x00007f7341d636db in start_thread (arg=0x7f730bfff700) at
pthread_create.c:463
#11 0x00007f7348e0488f in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 6 (Thread 0x7f73279c7700 (LWP 23674)):
#0  0x00007f7341d699f3 in futex_wait_cancelable (private=<optimized out>,
expected=0, futex_word=0x55c63acf5a24) at
../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  0x00007f7341d699f3 in __pthread_cond_wait_common (abstime=0x0,
mutex=0x55c63acf59d0, cond=0x55c63acf59f8) at pthread_cond_wait.c:502
#2  0x00007f7341d699f3 in __pthread_cond_wait (cond=0x55c63acf59f8,
mutex=0x55c63acf59d0) at pthread_cond_wait.c:655
#3  0x00007f7345d5dd9b in QWaitConditionPrivate::wait(QDeadlineTimer)
(deadline=..., this=0x55c63acf59d0) at thread/qwaitcondition_unix.cpp:146
#4  0x00007f7345d5dd9b in QWaitCondition::wait(QMutex*, QDeadlineTimer)
(this=<optimized out>, mutex=0x55c63ace8410, deadline=...) at
thread/qwaitcondition_unix.cpp:225
#5  0x00007f7345d5df19 in QWaitCondition::wait(QMutex*, unsigned long)
(this=this@entry=0x55c63ace8418, mutex=mutex@entry=0x55c63ace8410,
time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:208
#6  0x00007f7340e911d3 in QSGRenderThreadEventQueue::takeEvent(bool)
(wait=true, this=0x55c63ace8408) at scenegraph/qsgthreadedrenderloop.cpp:255
#7  0x00007f7340e911d3 in QSGRenderThread::processEventsAndWaitForMore()
(this=this@entry=0x55c63ace8370) at scenegraph/qsgthreadedrenderloop.cpp:905
#8  0x00007f7340e91631 in QSGRenderThread::run() (this=0x55c63ace8370) at
scenegraph/qsgthreadedrenderloop.cpp:1000
#9  0x00007f7345d577ec in QThreadPrivate::start(void*) (arg=0x55c63ace8370) at
thread/qthread_unix.cpp:342
#10 0x00007f7341d636db in start_thread (arg=0x7f73279c7700) at
pthread_create.c:463
#11 0x00007f7348e0488f in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 5 (Thread 0x7f7325644700 (LWP 4315)):
#0  0x00007f7341d699f3 in futex_wait_cancelable (private=<optimized out>,
expected=0, futex_word=0x7f7345142fb8) at
../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  0x00007f7341d699f3 in __pthread_cond_wait_common (abstime=0x0,
mutex=0x7f7345142f68, cond=0x7f7345142f90) at pthread_cond_wait.c:502
#2  0x00007f7341d699f3 in __pthread_cond_wait (cond=0x7f7345142f90,
mutex=0x7f7345142f68) at pthread_cond_wait.c:655
#3  0x00007f7344e4d944 in  () at /usr/lib/x86_64-linux-gnu/libQt5Script.so.5
#4  0x00007f7344e4d989 in  () at /usr/lib/x86_64-linux-gnu/libQt5Script.so.5
#5  0x00007f7341d636db in start_thread (arg=0x7f7325644700) at
pthread_create.c:463
#6  0x00007f7348e0488f in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 4 (Thread 0x7f7311fd6700 (LWP 4262)):
#0  0x00007f7341d699f3 in futex_wait_cancelable (private=<optimized out>,
expected=0, futex_word=0x55c63a4446dc) at
../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  0x00007f7341d699f3 in __pthread_cond_wait_common (abstime=0x0,
mutex=0x55c63a444688, cond=0x55c63a4446b0) at pthread_cond_wait.c:502
#2  0x00007f7341d699f3 in __pthread_cond_wait (cond=0x55c63a4446b0,
mutex=0x55c63a444688) at pthread_cond_wait.c:655
#3  0x00007f7312e31ebb in  () at /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#4  0x00007f7312e31ab7 in  () at /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#5  0x00007f7341d636db in start_thread (arg=0x7f7311fd6700) at
pthread_create.c:463
#6  0x00007f7348e0488f in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7f7326aae700 (LWP 4221)):
#0  0x00007f7348df7cf6 in __GI_ppoll (fds=fds@entry=0x7f7314000cf8,
nfds=nfds@entry=1, timeout=<optimized out>, timeout@entry=0x0,
sigmask=sigmask@entry=0x0) at ../sysdeps/unix/sysv/linux/ppoll.c:39
#1  0x00007f7345fa1df1 in ppoll (__ss=<optimized out>, __timeout=<optimized
out>, __nfds=<optimized out>, __fds=<optimized out>) at
/usr/include/x86_64-linux-gnu/bits/poll2.h:77
#2  0x00007f7345fa1df1 in qt_ppoll (timeout_ts=0x0, nfds=1, fds=0x7f7314000cf8)
at kernel/qcore_unix.cpp:132
#3  0x00007f7345fa1df1 in qt_safe_poll(pollfd*, unsigned long, timespec const*)
(fds=0x7f7314000cf8, nfds=1, timeout_ts=timeout_ts@entry=0x0) at
kernel/qcore_unix.cpp:155
#4  0x00007f7345fa35b2 in
QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
(this=<optimized out>, flags=...) at kernel/qeventdispatcher_unix.cpp:500
#5  0x00007f7345f4563a in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>)
(this=this@entry=0x7f7326aadd80, flags=..., flags@entry=...) at
kernel/qeventloop.cpp:225
#6  0x00007f7345d56317 in QThread::exec() (this=<optimized out>) at
thread/qthread.cpp:536
#7  0x00007f734093e605 in  () at /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#8  0x00007f7345d577ec in QThreadPrivate::start(void*) (arg=0x55c63a453a60) at
thread/qthread_unix.cpp:342
#9  0x00007f7341d636db in start_thread (arg=0x7f7326aae700) at
pthread_create.c:463
#10 0x00007f7348e0488f in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7f732df6e700 (LWP 4078)):
#0  0x00007f7348df7cf6 in __GI_ppoll (fds=fds@entry=0x55c63a24bdc8,
nfds=nfds@entry=1, timeout=<optimized out>, timeout@entry=0x0,
sigmask=sigmask@entry=0x0) at ../sysdeps/unix/sysv/linux/ppoll.c:39
#1  0x00007f7345fa1df1 in ppoll (__ss=<optimized out>, __timeout=<optimized
out>, __nfds=<optimized out>, __fds=<optimized out>) at
/usr/include/x86_64-linux-gnu/bits/poll2.h:77
#2  0x00007f7345fa1df1 in qt_ppoll (timeout_ts=0x0, nfds=1, fds=0x55c63a24bdc8)
at kernel/qcore_unix.cpp:132
#3  0x00007f7345fa1df1 in qt_safe_poll(pollfd*, unsigned long, timespec const*)
(fds=0x55c63a24bdc8, nfds=1, timeout_ts=timeout_ts@entry=0x0) at
kernel/qcore_unix.cpp:155
#4  0x00007f7345fa35b2 in
QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
(this=<optimized out>, flags=...) at kernel/qeventdispatcher_unix.cpp:500
#5  0x00007f7345f4563a in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>)
(this=this@entry=0x7f732df6dd70, flags=..., flags@entry=...) at
kernel/qeventloop.cpp:225
#6  0x00007f7345d56317 in QThread::exec() (this=this@entry=0x7f7347ec4da0
<(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at
thread/qthread.cpp:536
#7  0x00007f7347c4c555 in QDBusConnectionManager::run() (this=0x7f7347ec4da0
<(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at
qdbusconnection.cpp:179
#8  0x00007f7345d577ec in QThreadPrivate::start(void*) (arg=0x7f7347ec4da0
<(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at
thread/qthread_unix.cpp:342
#9  0x00007f7341d636db in start_thread (arg=0x7f732df6e700) at
pthread_create.c:463
#10 0x00007f7348e0488f in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7f734948ee80 (LWP 3955)):
[KCrash Handler]
#6  0x00007f73488f5745 in std::__atomic_base<int>::load(std::memory_order)
const (__m=std::memory_order_relaxed, this=0x21) at
/usr/include/c++/7/bits/atomic_base.h:396
#7  0x00007f73488f5745 in QAtomicOps<int>::loadRelaxed<int>(std::atomic<int>
const&) (_q_value=...) at
/usr/include/x86_64-linux-gnu/qt5/QtCore/qatomic_cxx11.h:239
#8  0x00007f73488f5745 in QBasicAtomicInteger<int>::loadRelaxed() const
(this=0x21) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qbasicatomic.h:107
#9  0x00007f73488f5745 in QtPrivate::RefCount::isShared() const (this=0x21) at
/usr/include/x86_64-linux-gnu/qt5/QtCore/qrefcount.h:101
#10 0x00007f73488f5745 in QMap<KWin::Group*, KWin::Layer>::detach()
(this=0x55c63af903b8) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qmap.h:357
#11 0x00007f73488f5745 in QMap<KWin::Group*, KWin::Layer>::find(KWin::Group*
const&) (akey=<optimized out>, this=0x55c63af903b8) at
/usr/include/x86_64-linux-gnu/qt5/QtCore/qmap.h:877
#12 0x00007f73488f5745 in KWin::Workspace::constrainedStackingOrder()
(this=this@entry=0x55c63a2426f0) at ./layers.cpp:518
#13 0x00007f73488f6238 in KWin::Workspace::updateStackingOrder(bool)
(this=0x55c63a2426f0, propagate_new_clients=propagate_new_clients@entry=false)
at ./layers.cpp:122
#14 0x00007f73489c75ac in KWin::X11Client::setFrameGeometry(int, int, int, int,
KWin::AbstractClient::ForceGeometry_t) (this=0x55c63a94d610, x=<optimized out>,
y=<optimized out>, w=<optimized out>, h=<optimized out>,
force=KWin::AbstractClient::NormalGeometrySet) at ./x11client.cpp:4205
#15 0x00007f7348a1f3b9 in KWin::AbstractClient::setFrameGeometry(QRect const&,
KWin::AbstractClient::ForceGeometry_t)
(force=KWin::AbstractClient::NormalGeometrySet, rect=..., this=0x55c63a94d610)
at
./obj-x86_64-linux-gnu/kwin_autogen/EWIEGA46WW/../../../abstract_client.h:1335
#16 0x00007f7348a1f3b9 in KWin::AbstractClient::qt_static_metacall(QObject*,
QMetaObject::Call, int, void**) (_o=_o@entry=0x55c63a94d610,
_c=_c@entry=QMetaObject::WriteProperty, _id=_id@entry=27,
_a=_a@entry=0x7ffca6953f80) at
./obj-x86_64-linux-gnu/kwin_autogen/EWIEGA46WW/moc_abstract_client.cpp:812
#17 0x00007f7348a24f73 in KWin::AbstractClient::qt_metacall(QMetaObject::Call,
int, void**) (this=this@entry=0x55c63a94d610,
_c=_c@entry=QMetaObject::WriteProperty, _id=27, _a=_a@entry=0x7ffca6953f80) at
./obj-x86_64-linux-gnu/kwin_autogen/EWIEGA46WW/moc_abstract_client.cpp:861
#18 0x00007f7348a24fe5 in KWin::X11Client::qt_metacall(QMetaObject::Call, int,
void**) (this=0x55c63a94d610, _c=QMetaObject::WriteProperty, _id=<optimized
out>, _a=0x7ffca6953f80) at
./obj-x86_64-linux-gnu/kwin_autogen/EWIEGA46WW/moc_x11client.cpp:278
#19 0x00007f7340899bf2 in  () at /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#20 0x00007f73408975ea in QQmlPropertyPrivate::write(QObject*, QQmlPropertyData
const&, QVariant const&, QQmlContextData*, QFlags<QQmlPropertyData::WriteFlag>)
() at /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#21 0x00007f73407ccb43 in
QV4::QObjectWrapper::setProperty(QV4::ExecutionEngine*, QObject*,
QQmlPropertyData*, QV4::Value const&) () at
/usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#22 0x00007f73407cda5e in
QV4::QObjectWrapper::setQmlProperty(QV4::ExecutionEngine*, QQmlContextData*,
QObject*, QV4::String*, QV4::QObjectWrapper::RevisionMode, QV4::Value const&)
() at /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#23 0x00007f73407cdbab in QV4::QObjectWrapper::virtualPut(QV4::Managed*,
QV4::PropertyKey, QV4::Value const&, QV4::Value*) () at
/usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#24 0x00007f73407f8079 in
QV4::Runtime::StoreProperty::call(QV4::ExecutionEngine*, QV4::Value const&,
int, QV4::Value const&) () at /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#25 0x00007f730a3258b2 in  ()
#26 0x0000000000000000 in  ()

The reporter indicates this bug may be a duplicate of or related to bug 412178.

Possible duplicates by query: bug 417542, bug 414147, bug 413706, bug 413637,
bug 413301.

Reported using DrKonqi

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to