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

            Bug ID: 418683
           Summary: kwin_wayland crashes when I hover over task manager
                    after dragging an entry in task manager to another
                    virtual desktop
           Product: kwin
           Version: git master
          Platform: Neon Packages
                OS: Linux
            Status: REPORTED
          Severity: crash
          Priority: NOR
         Component: wayland-generic
          Assignee: kwin-bugs-n...@kde.org
          Reporter: bugsefor...@gmx.com
  Target Milestone: ---

STEPS TO REPRODUCE
1. set virtual desktops in system settings > workspace behavior > virtual
desktops (I use 4 VDs, 2 rows)
2. add Pager widget to Plasma panel
3. start Wayland session
4. open Konsole and maximize its window
5. drag Konsole entry in task manager to another virtual desktop (plasma
switches to another virtual desktop) and do NOT release the mouse button
6. while mouse button is still pressed, move cursor to outside of Pager widget
then hover over
the task manager

OBSERVED RESULT
kwin_wayland crashes and your system goes back to login screen

EXPECTED RESULT
no crash

SOFTWARE/OS VERSIONS
Operating System: KDE neon Unstable Edition
KDE Plasma Version: 5.18.80
KDE Frameworks Version: 5.68.0
Qt Version: 5.14.1

Thread 13 (Thread 1876.2008):
#0  0x00007f71120f69f3 in futex_wait_cancelable (private=<optimized out>,
expected=0, futex_word=0x7f710fcbffb8 <QTWTF::pageheap_memory+57592>)
    at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x7f710fcbff68
<QTWTF::pageheap_memory+57512>, cond=0x7f710fcbff90
<QTWTF::pageheap_memory+57552>)
    at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=cond@entry=0x7f710fcbff90
<QTWTF::pageheap_memory+57552>, mutex=mutex@entry=0x7f710fcbff68
<QTWTF::pageheap_memory+57512>)
    at pthread_cond_wait.c:655
#3  0x00007f710f9ca944 in QTWTF::TCMalloc_PageHeap::scavengerThread
(this=0x7f710fcb1ec0 <QTWTF::pageheap_memory>)
    at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:2359
#4  0x00007f710f9ca989 in QTWTF::TCMalloc_PageHeap::runScavengerThread
(context=<optimized out>) at
../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:1464
#5  0x00007f71120f06db in start_thread (arg=0x7f70c916b700) at
pthread_create.c:463
#6  0x00007f711010188f in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 12 (Thread 1876.2007):
#0  syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1  0x00007f7110a36d44 in QtLinuxFutex::_q_futex (val3=0, addr2=0x0, val2=0,
val=<optimized out>, op=0, addr=<optimized out>) at thread/qfutex_p.h:116
#2  QtLinuxFutex::futexWait<QBasicAtomicInteger<unsigned int> >
(expectedValue=<optimized out>, futex=...) at thread/qfutex_p.h:135
#3  futexSemaphoreTryAcquire_loop<false> (timeout=-1, nn=8589934593,
curValue=<optimized out>, u=...) at thread/qsemaphore.cpp:219
#4  futexSemaphoreTryAcquire<false> (timeout=-1, n=n@entry=1, u=...) at
thread/qsemaphore.cpp:262
#5  QSemaphore::acquire (this=this@entry=0x555ada558910, n=n@entry=1) at
thread/qsemaphore.cpp:326
#6  0x00007f70fa6bdd7a in QtVirtualKeyboard::HunspellWorker::run
(this=0x555ada5588f0) at hunspellworker.cpp:744
#7  0x00007f7110a347ec in QThreadPrivate::start (arg=0x555ada5588f0) at
thread/qthread_unix.cpp:342
#8  0x00007f71120f06db in start_thread (arg=0x7f70c996c700) at
pthread_create.c:463
#9  0x00007f711010188f in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 10 (Thread 1876.2005):
#0  0x00007f71120f69f3 in futex_wait_cancelable (private=<optimized out>,
expected=0, futex_word=0x555adaa7d360) at
../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x555adaa7d310,
cond=0x555adaa7d338) at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=cond@entry=0x555adaa7d338,
mutex=mutex@entry=0x555adaa7d310) at pthread_cond_wait.c:655
#3  0x00007f7110a3ad9b in QWaitConditionPrivate::wait (deadline=...,
this=0x555adaa7d310) at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait (this=<optimized out>, mutex=0x555adaad1f78,
deadline=...) at thread/qwaitcondition_unix.cpp:225
#5  0x00007f7110a3af19 in QWaitCondition::wait (this=this@entry=0x555adaad1f80,
mutex=mutex@entry=0x555adaad1f78, time=time@entry=18446744073709551615)
    at thread/qwaitcondition_unix.cpp:208
#6  0x00007f70d023d8eb in FileInfoThread::run (this=0x555adaad1f68) at
fileinfothread.cpp:231
#7  0x00007f7110a347ec in QThreadPrivate::start (arg=0x555adaad1f68) at
thread/qthread_unix.cpp:342
#8  0x00007f71120f06db in start_thread (arg=0x7f70ca96e700) at
pthread_create.c:463
#9  0x00007f711010188f in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 9 (Thread 1876.2004):
#0  syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1  0x00007f7110a36d44 in QtLinuxFutex::_q_futex (val3=0, addr2=0x0, val2=0,
val=<optimized out>, op=0, addr=<optimized out>) at thread/qfutex_p.h:116
#2  QtLinuxFutex::futexWait<QBasicAtomicInteger<unsigned int> >
(expectedValue=<optimized out>, futex=...) at thread/qfutex_p.h:135
---Type <return> to continue, or q <return> to quit---
#3  futexSemaphoreTryAcquire_loop<false> (timeout=-1, nn=8589934593,
curValue=<optimized out>, u=...) at thread/qsemaphore.cpp:219
#4  futexSemaphoreTryAcquire<false> (timeout=-1, n=n@entry=1, u=...) at
thread/qsemaphore.cpp:262
#5  QSemaphore::acquire (this=this@entry=0x555ada4bfac0, n=n@entry=1) at
thread/qsemaphore.cpp:326
#6  0x00007f70fa6bdd7a in QtVirtualKeyboard::HunspellWorker::run
(this=0x555ada4bfaa0) at hunspellworker.cpp:744
#7  0x00007f7110a347ec in QThreadPrivate::start (arg=0x555ada4bfaa0) at
thread/qthread_unix.cpp:342
#8  0x00007f71120f06db in start_thread (arg=0x7f70cb16f700) at
pthread_create.c:463
#9  0x00007f711010188f in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 8 (Thread 1876.2003):
#0  0x00007f71100f4bf9 in __GI___poll (fds=0x7f70cc0029e0, nfds=1, timeout=-1)
at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f71074db5c9 in ?? () from
target:/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f71074db6dc in g_main_context_iteration () from
target:/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f7110c830bc in QEventDispatcherGlib::processEvents
(this=0x7f70cc000b20, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#4  0x00007f7110c2263a in QEventLoop::exec (this=this@entry=0x7f70d34f2d80,
flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#5  0x00007f7110a33317 in QThread::exec (this=this@entry=0x555adaae0400) at
thread/qthread.cpp:536
#6  0x00007f710be29605 in QQmlThreadPrivate::run (this=0x555adaae0400) at
qml/ftw/qqmlthread.cpp:155
#7  0x00007f7110a347ec in QThreadPrivate::start (arg=0x555adaae0400) at
thread/qthread_unix.cpp:342
#8  0x00007f71120f06db in start_thread (arg=0x7f70d34f3700) at
pthread_create.c:463
#9  0x00007f711010188f in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 7 (Thread 1876.1913):
#0  0x00007f71100f4bf9 in __GI___poll (fds=0x7f70dc002de0, nfds=1, timeout=-1)
at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f71074db5c9 in ?? () from
target:/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f71074db6dc in g_main_context_iteration () from
target:/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0

#3  0x00007f7110c830bc in QEventDispatcherGlib::processEvents
(this=0x7f70dc000b20, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#4  0x00007f7110c2263a in QEventLoop::exec (this=this@entry=0x7f70e54aed80,
flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#5  0x00007f7110a33317 in QThread::exec (this=this@entry=0x555ad9fad7c0) at
thread/qthread.cpp:536
#6  0x00007f710be29605 in QQmlThreadPrivate::run (this=0x555ad9fad7c0) at
qml/ftw/qqmlthread.cpp:155
#7  0x00007f7110a347ec in QThreadPrivate::start (arg=0x555ad9fad7c0) at
thread/qthread_unix.cpp:342
#8  0x00007f71120f06db in start_thread (arg=0x7f70e54af700) at
pthread_create.c:463
#9  0x00007f711010188f in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 5 (Thread 1876.1880):
#0  0x00007f71120f69f3 in futex_wait_cancelable (private=<optimized out>,
expected=0, futex_word=0x555ada017b2c) at
../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x555ada017ad8,
cond=0x555ada017b00) at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x555ada017b00, mutex=0x555ada017ad8) at
pthread_cond_wait.c:655
#3  0x00007f70f137eecb in ?? () from
target:/usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#4  0x00007f70f137eac7 in ?? () from
target:/usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#5  0x00007f71120f06db in start_thread (arg=0x7f70e7cac700) at
pthread_create.c:463
#6  0x00007f711010188f in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 4 (Thread 1876.1879):
#0  0x00007f71100f4bf9 in __GI___poll (fds=0x7f70e80029e0, nfds=2, timeout=-1)
at ../sysdeps/unix/sysv/linux/poll.c:29
---Type <return> to continue, or q <return> to quit---
#1  0x00007f71074db5c9 in ?? () from
target:/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f71074db6dc in g_main_context_iteration () from
target:/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f7110c830bc in QEventDispatcherGlib::processEvents
(this=0x7f70e8000b20, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#4  0x00007f7110c2263a in QEventLoop::exec (this=this@entry=0x7f70f3ffeda0,
flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#5  0x00007f7110a33317 in QThread::exec (this=<optimized out>) at
thread/qthread.cpp:536
#6  0x00007f7110a347ec in QThreadPrivate::start (arg=0x555ad9f69600) at
thread/qthread_unix.cpp:342
#7  0x00007f71120f06db in start_thread (arg=0x7f70f3fff700) at
pthread_create.c:463
#8  0x00007f711010188f in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 1876.1878):
#0  0x00007f71100f4bf9 in __GI___poll (fds=0x7f70ec002de0, nfds=2, timeout=-1)
at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f71074db5c9 in ?? () from
target:/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f71074db6dc in g_main_context_iteration () from
target:/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f7110c830bc in QEventDispatcherGlib::processEvents
(this=0x7f70ec000b20, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#4  0x00007f7110c2263a in QEventLoop::exec (this=this@entry=0x7f70f8b29da0,
flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#5  0x00007f7110a33317 in QThread::exec (this=<optimized out>) at
thread/qthread.cpp:536
#6  0x00007f7110a347ec in QThreadPrivate::start (arg=0x555ad9f685c0) at
thread/qthread_unix.cpp:342
#7  0x00007f71120f06db in start_thread (arg=0x7f70f8b2a700) at
pthread_create.c:463
#8  0x00007f711010188f in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 1876.1877):
#0  0x00007f71100f4bf9 in __GI___poll (fds=0x7f70f4017100, nfds=5, timeout=-1)
at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f71074db5c9 in ?? () from
target:/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f71074db6dc in g_main_context_iteration () from
target:/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f7110c830bc in QEventDispatcherGlib::processEvents
(this=0x7f70f4000b20, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#4  0x00007f7110c2263a in QEventLoop::exec (this=this@entry=0x7f70f998fd70,
flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#5  0x00007f7110a33317 in QThread::exec (this=this@entry=0x7f71120e7da0
<(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at
thread/qthread.cpp:536
#6  0x00007f7111e6f555 in QDBusConnectionManager::run (this=0x7f71120e7da0
<(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at
qdbusconnection.cpp:179
#7  0x00007f7110a347ec in QThreadPrivate::start (arg=0x7f71120e7da0 <(anonymous
namespace)::Q_QGS__q_manager::innerFunction()::holder>) at
thread/qthread_unix.cpp:342
#8  0x00007f71120f06db in start_thread (arg=0x7f70f9990700) at
pthread_create.c:463
#9  0x00007f711010188f in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 1876.1876):
#0  0x00007f71123a9c39 in KWayland::Server::SurfaceInterface::buffer() () from
target:/usr/lib/x86_64-linux-gnu/libKF5WaylandServer.so.5

#1  0x00007f7113734c01 in KWin::CursorImage::updateDragCursor
(this=0x555ada4114c0) at ./pointer_input.cpp:1222
#2  0x00007f7110c5efe7 in QtPrivate::QSlotObjectBase::call (a=0x7fff39a57a80,
r=0x555ada4114c0, this=<optimized out>)
    at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:394
#3  doActivate<false> (sender=0x555ada70c380, signal_index=5,
argv=0x7fff39a57a80) at kernel/qobject.cpp:3870
#4  0x00007f7110c5efe7 in QtPrivate::QSlotObjectBase::call (a=0x7fff39a57b60,
r=0x555ada70c380, this=<optimized out>)
    at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:394
#5  doActivate<false> (sender=0x555ada839670, signal_index=6,
argv=0x7fff39a57b60) at kernel/qobject.cpp:3870
#6  0x00007f71123920de in
KWayland::Server::Cursor::Private::update(QPointer<KWayland::Server::SurfaceInterface>
const&, unsigned int, QPoint const&) ()
   from target:/usr/lib/x86_64-linux-gnu/libKF5WaylandServer.so.5
---Type <return> to continue, or q <return> to quit---
#7  0x00007f7112392206 in
KWayland::Server::PointerInterface::Private::setCursor(unsigned int,
KWayland::Server::SurfaceInterface*, QPoint const&) ()
   from target:/usr/lib/x86_64-linux-gnu/libKF5WaylandServer.so.5
#8  0x00007f71123923da in
KWayland::Server::PointerInterface::Private::setCursorCallback(wl_client*,
wl_resource*, unsigned int, wl_resource*, int, int) ()
   from target:/usr/lib/x86_64-linux-gnu/libKF5WaylandServer.so.5
#9  0x00007f7102ed0dae in ffi_call_unix64 () from
target:/usr/lib/x86_64-linux-gnu/libffi.so.6
#10 0x00007f7102ed071f in ffi_call () from
target:/usr/lib/x86_64-linux-gnu/libffi.so.6
#11 0x00007f71091347e4 in wl_closure_invoke
(closure=closure@entry=0x555adae20e50, flags=flags@entry=2, target=<optimized
out>, target@entry=0x555ada8324d0, 
    opcode=opcode@entry=0, data=<optimized out>, data@entry=0x555ada709270) at
../src/connection.c:1006
#12 0x00007f710913126f in wl_client_connection_data (fd=<optimized out>,
mask=<optimized out>, data=0x555ada709270) at ../src/wayland-server.c:420
#13 0x00007f7109132832 in wl_event_loop_dispatch (loop=0x555ad9f3f7d0,
timeout=<optimized out>) at ../src/event-loop.c:641
#14 0x00007f71123749de in KWayland::Server::Display::Private::dispatch() ()
from target:/usr/lib/x86_64-linux-gnu/libKF5WaylandServer.so.5
#15 0x00007f7110c5efe7 in QtPrivate::QSlotObjectBase::call (a=0x7fff39a583b0,
r=0x555ad9f57490, this=<optimized out>)
    at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:394
#16 doActivate<false> (sender=0x555ad9f64320, signal_index=3,
argv=0x7fff39a583b0) at kernel/qobject.cpp:3870
#17 0x00007f7110c598a2 in QMetaObject::activate
(sender=sender@entry=0x555ad9f64320, m=m@entry=0x7f71110f1bc0
<QSocketNotifier::staticMetaObject>, 
    local_signal_index=local_signal_index@entry=0,
argv=argv@entry=0x7fff39a583b0) at kernel/qobject.cpp:3930
#18 0x00007f7110c625c8 in QSocketNotifier::activated
(this=this@entry=0x555ad9f64320, _t1=<optimized out>, _t2=...) at
.moc/moc_qsocketnotifier.cpp:141
#19 0x00007f7110c62982 in QSocketNotifier::event (this=0x555ad9f64320,
e=0x7fff39a58680) at kernel/qsocketnotifier.cpp:266
#20 0x00007f71112578bc in QApplicationPrivate::notify_helper
(this=this@entry=0x555ad9f07bd0, receiver=receiver@entry=0x555ad9f64320,
e=e@entry=0x7fff39a58680)
    at kernel/qapplication.cpp:3684
#21 0x00007f711125eac0 in QApplication::notify (this=0x7fff39a58a90,
receiver=0x555ad9f64320, e=0x7fff39a58680) at kernel/qapplication.cpp:3430
#22 0x00007f7110c23db8 in QCoreApplication::notifyInternal2
(receiver=0x555ad9f64320, event=0x7fff39a58680) at
kernel/qcoreapplication.cpp:1092
#23 0x00007f7110c80283 in QEventDispatcherUNIXPrivate::activateSocketNotifiers
(this=this@entry=0x555ad9f16e70) at kernel/qeventdispatcher_unix.cpp:304
#24 0x00007f7110c8068f in QEventDispatcherUNIX::processEvents (this=<optimized
out>, flags=...) at kernel/qeventdispatcher_unix.cpp:509
#25 0x00007f70fcbc2bad in
QUnixEventDispatcherQPA::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
()
   from target:/usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/KWinQpaPlugin.so
#26 0x00007f7110c2263a in QEventLoop::exec (this=this@entry=0x7fff39a58830,
flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#27 0x00007f7110c2bdb0 in QCoreApplication::exec () at
kernel/qcoreapplication.cpp:1400
#28 0x0000555ad7ef70ff in main (argc=<optimized out>, argv=<optimized out>) at
./main_wayland.cpp:676

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

Reply via email to