Bug 431842

Summary: Plasma crashes in QtWaylandClient::QWaylandSurface::surface_leave() after enabling and disabling second monitor
Product: [Plasma] plasmashell Reporter: bertil.bonus
Component: generic-crashAssignee: Plasma Bugs List <plasma-bugs>
Status: RESOLVED DUPLICATE    
Severity: crash CC: bertil.bonus, kde, nate, plasma-bugs
Priority: NOR Keywords: drkonqi, wayland
Version: 5.20.5   
Target Milestone: 1.0   
Platform: Neon   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: New crash information added by DrKonqi

Description bertil.bonus 2021-01-20 09:00:38 UTC
Application: plasmashell (5.20.5)

Qt Version: 5.15.2
Frameworks Version: 5.78.0
Operating System: Linux 5.4.0-62-generic x86_64
Windowing system: Wayland
Distribution: KDE neon User Edition 5.20

-- Information about the crash:
- What I was doing when the application crashed:
Disabled second monior from settings. Then enable. There is no primare monitor setting so I did this to move the application menu bar.

- Custom settings of the application:
The compositor settings page said that there had been a crash. I tried to enable opengl 3.1. After thar crash and reboot. Not sure if that has anything to do with this crash. Now settings sais opengl 3.1 accurate.

-- Backtrace:
Application: Plasma (plasmashell), signal: Segmentation fault

[New LWP 2452]
[New LWP 2586]
[New LWP 2612]
[New LWP 2615]
[New LWP 2627]
[New LWP 2629]
[New LWP 3698]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
0x00007f7b28855aff in __GI___poll (fds=0x7ffcab088e68, nfds=1, timeout=1000) at ../sysdeps/unix/sysv/linux/poll.c:29
[Current thread is 1 (Thread 0x7f7b24aac3c0 (LWP 2443))]

Thread 8 (Thread 0x7f7ae27fc700 (LWP 3698)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x5632e3f421f0) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x5632e3f421a0, cond=0x5632e3f421c8) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x5632e3f421c8, mutex=0x5632e3f421a0) at pthread_cond_wait.c:638
#3  0x00007f7b28be8d1b in QWaitConditionPrivate::wait (deadline=..., this=0x5632e3f421a0) at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait (this=this@entry=0x5632e1655da8, mutex=mutex@entry=0x5632e1655da0, deadline=...) at thread/qwaitcondition_unix.cpp:225
#5  0x00007f7b2a981814 in QSGRenderThreadEventQueue::takeEvent (wait=true, this=0x5632e1655d98) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qdeadlinetimer.h:68
#6  QSGRenderThread::processEventsAndWaitForMore (this=this@entry=0x5632e1655d00) at scenegraph/qsgthreadedrenderloop.cpp:936
#7  0x00007f7b2a981c89 in QSGRenderThread::run (this=0x5632e1655d00) at scenegraph/qsgthreadedrenderloop.cpp:1053
#8  0x00007f7b28be2bac in QThreadPrivate::start (arg=0x5632e1655d00) at thread/qthread_unix.cpp:329
#9  0x00007f7b27c3f609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#10 0x00007f7b28862293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 7 (Thread 0x7f7aea6a1700 (LWP 2629)):
#0  0x00007f7b28855aff in __GI___poll (fds=0x7f7ad0005d20, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f7b2717f1ae in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f7b2717f2e3 in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f7b28e22fbb in QEventDispatcherGlib::processEvents (this=0x7f7ad0000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#4  0x00007f7b28dc71ab in QEventLoop::exec (this=this@entry=0x7f7aea6a0ca0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#5  0x00007f7b28be1a12 in QThread::exec (this=<optimized out>) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#6  0x00007f7aeab9907c in KCupsConnection::run() () from /usr/lib/x86_64-linux-gnu/libkcupslib.so
#7  0x00007f7b28be2bac in QThreadPrivate::start (arg=0x5632e1bc5590) at thread/qthread_unix.cpp:329
#8  0x00007f7b27c3f609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#9  0x00007f7b28862293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 6 (Thread 0x7f7aeb7fe700 (LWP 2627)):
#0  0x00007f7b28855aff in __GI___poll (fds=0x7f7acc004e60, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f7b2717f1ae in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f7b2717f2e3 in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f7b28e22fbb in QEventDispatcherGlib::processEvents (this=0x7f7acc000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#4  0x00007f7b28dc71ab in QEventLoop::exec (this=this@entry=0x7f7aeb7fdce0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#5  0x00007f7b28be1a12 in QThread::exec (this=<optimized out>) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#6  0x00007f7b28be2bac in QThreadPrivate::start (arg=0x5632e17ec8f0) at thread/qthread_unix.cpp:329
#7  0x00007f7b27c3f609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#8  0x00007f7b28862293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 5 (Thread 0x7f7b12b80700 (LWP 2615)):
#0  __GI___libc_read (nbytes=16, buf=0x7f7b12b7fa90, fd=37) at ../sysdeps/unix/sysv/linux/read.c:26
#1  __GI___libc_read (fd=37, buf=0x7f7b12b7fa90, nbytes=16) at ../sysdeps/unix/sysv/linux/read.c:24
#2  0x00007f7b271c789f in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f7b2717ecfe in g_main_context_check () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f7b2717f152 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007f7b2717f2e3 in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#6  0x00007f7b28e22fbb in QEventDispatcherGlib::processEvents (this=0x7f7b08000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#7  0x00007f7b28dc71ab in QEventLoop::exec (this=this@entry=0x7f7b12b7fca0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#8  0x00007f7b28be1a12 in QThread::exec (this=this@entry=0x7f7b140ab3e0) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#9  0x00007f7b2a8bc38a in QQuickPixmapReader::run (this=0x7f7b140ab3e0) at util/qquickpixmapcache.cpp:1024
#10 0x00007f7b28be2bac in QThreadPrivate::start (arg=0x7f7b140ab3e0) at thread/qthread_unix.cpp:329
#11 0x00007f7b27c3f609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#12 0x00007f7b28862293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 4 (Thread 0x7f7b137fe700 (LWP 2612)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x5632e0c7c790) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x5632e0c7c740, cond=0x5632e0c7c768) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x5632e0c7c768, mutex=0x5632e0c7c740) at pthread_cond_wait.c:638
#3  0x00007f7b28be8d1b in QWaitConditionPrivate::wait (deadline=..., this=0x5632e0c7c740) at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait (this=this@entry=0x5632e0c7c728, mutex=mutex@entry=0x5632e0c7c720, deadline=...) at thread/qwaitcondition_unix.cpp:225
#5  0x00007f7b2a981814 in QSGRenderThreadEventQueue::takeEvent (wait=true, this=0x5632e0c7c718) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qdeadlinetimer.h:68
#6  QSGRenderThread::processEventsAndWaitForMore (this=this@entry=0x5632e0c7c680) at scenegraph/qsgthreadedrenderloop.cpp:936
#7  0x00007f7b2a981c89 in QSGRenderThread::run (this=0x5632e0c7c680) at scenegraph/qsgthreadedrenderloop.cpp:1053
#8  0x00007f7b28be2bac in QThreadPrivate::start (arg=0x5632e0c7c680) at thread/qthread_unix.cpp:329
#9  0x00007f7b27c3f609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#10 0x00007f7b28862293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7f7b2097f700 (LWP 2586)):
#0  0x00007f7b28855aff in __GI___poll (fds=0x7f7b140023e0, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f7b2717f1ae in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f7b2717f2e3 in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f7b28e22fbb in QEventDispatcherGlib::processEvents (this=0x7f7b14000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#4  0x00007f7b28dc71ab in QEventLoop::exec (this=this@entry=0x7f7b2097ecc0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#5  0x00007f7b28be1a12 in QThread::exec (this=<optimized out>) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#6  0x00007f7b2a4b7fa9 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#7  0x00007f7b28be2bac in QThreadPrivate::start (arg=0x5632e02a8f00) at thread/qthread_unix.cpp:329
#8  0x00007f7b27c3f609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#9  0x00007f7b28862293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7f7b23c2a700 (LWP 2452)):
#0  0x00007f7b28e2370f in timerSourceCheck (source=0x7f7b1c0050d0) at kernel/qeventdispatcher_glib.cpp:172
#1  0x00007f7b2717ebe1 in g_main_context_check () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f7b2717f152 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f7b2717f2e3 in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f7b28e22fbb in QEventDispatcherGlib::processEvents (this=0x7f7b1c000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#5  0x00007f7b28dc71ab in QEventLoop::exec (this=this@entry=0x7f7b23c29cb0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#6  0x00007f7b28be1a12 in QThread::exec (this=<optimized out>) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#7  0x00007f7b2974af4b in ?? () from /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5
#8  0x00007f7b28be2bac in QThreadPrivate::start (arg=0x7f7b297ced80) at thread/qthread_unix.cpp:329
#9  0x00007f7b27c3f609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#10 0x00007f7b28862293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7f7b24aac3c0 (LWP 2443)):
[KCrash Handler]
#4  0x0000000000000000 in ?? ()
#5  0x00007f7b26d01a3a in QtWaylandClient::QWaylandSurface::surface_leave (this=<optimized out>, output=<optimized out>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qdebug.h:129
#6  0x00007f7b27125ff5 in ffi_call_unix64 () at ../src/x86/unix64.S:101
#7  0x00007f7b2712540a in ffi_call_int (cif=<optimized out>, fn=<optimized out>, rvalue=<optimized out>, avalue=<optimized out>, closure=<optimized out>) at ../src/x86/ffi64.c:669
#8  0x00007f7b286793a8 in wl_closure_invoke (closure=closure@entry=0x7f7afc20c920, flags=flags@entry=1, target=<optimized out>, target@entry=0x5632e2b8da50, opcode=opcode@entry=1, data=<optimized out>) at ../src/connection.c:1018
#9  0x00007f7b28675c48 in dispatch_event (display=display@entry=0x5632dff7ae90, queue=<optimized out>) at ../src/wayland-client.c:1445
#10 0x00007f7b2867721c in dispatch_queue (queue=0x5632dff7af60, display=0x5632dff7ae90) at ../src/wayland-client.c:1591
#11 wl_display_dispatch_queue_pending (display=0x5632dff7ae90, queue=0x5632dff7af60) at ../src/wayland-client.c:1833
#12 0x00007f7b28677280 in wl_display_dispatch_pending (display=<optimized out>) at ../src/wayland-client.c:1896
#13 0x00007f7b26cecf9f in QtWaylandClient::QWaylandDisplay::flushRequests (this=0x5632dff77020) at qwaylanddisplay.cpp:221
#14 0x00007f7b28dff6f0 in doActivate<false> (sender=0x5632dff8ff30, signal_index=4, argv=0x7ffcab089b70) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:395
#15 0x00007f7b28df8a87 in QMetaObject::activate (sender=sender@entry=0x5632dff8ff30, m=m@entry=0x7f7b290621e0 <QAbstractEventDispatcher::staticMetaObject>, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x0) at kernel/qobject.cpp:3946
#16 0x00007f7b28dc5247 in QAbstractEventDispatcher::awake (this=this@entry=0x5632dff8ff30) at .moc/moc_qabstracteventdispatcher.cpp:149
#17 0x00007f7b28e22fdc in QEventDispatcherGlib::processEvents (this=0x5632dff8ff30, flags=...) at kernel/qeventdispatcher_glib.cpp:430
#18 0x00007f7b28dc71ab in QEventLoop::exec (this=this@entry=0x7ffcab089c90, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#19 0x00007f7b28dcf354 in QCoreApplication::exec () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#20 0x00005632df30ed6c in main (argc=<optimized out>, argv=<optimized out>) at ./shell/main.cpp:252
[Inferior 1 (process 2443) detached]

Possible duplicates by query: bug 430878, bug 429342, bug 428420, bug 422418, bug 422332.

Reported using DrKonqi
Comment 1 bertil.bonus 2021-01-20 09:15:40 UTC
Created attachment 135013 [details]
New crash information added by DrKonqi

plasmashell (5.20.5) using Qt 5.15.2

- What I was doing when the application crashed:

Enable and disable second monitor under wayland.

-- Backtrace (Reduced):
#4  0x00007f9b1d529690 in typeinfo name for QQmlApplicationEngine () from /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#5  0x00007f9b19ce4a3a in QtWaylandClient::QWaylandSurface::surface_leave (this=<optimized out>, output=<optimized out>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qdebug.h:129
#6  0x00007f9b1a108ff5 in ffi_call_unix64 () at ../src/x86/unix64.S:101
#7  0x00007f9b1a10840a in ffi_call_int (cif=<optimized out>, fn=<optimized out>, rvalue=<optimized out>, avalue=<optimized out>, closure=<optimized out>) at ../src/x86/ffi64.c:669
#8  0x00007f9b1b65c3a8 in wl_closure_invoke (closure=closure@entry=0x7f9ab029ebb0, flags=flags@entry=1, target=<optimized out>, target@entry=0x557b5506a5c0, opcode=opcode@entry=1, data=<optimized out>) at ../src/connection.c:1018
Comment 2 Nate Graham 2021-01-26 21:23:38 UTC
#5  0x00007f7b26d01a3a in QtWaylandClient::QWaylandSurface::surface_leave (this=<optimized out>, output=<optimized out>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qdebug.h:129
#6  0x00007f7b27125ff5 in ffi_call_unix64 () at ../src/x86/unix64.S:101
#7  0x00007f7b2712540a in ffi_call_int (cif=<optimized out>, fn=<optimized out>, rvalue=<optimized out>, avalue=<optimized out>, closure=<optimized out>) at ../src/x86/ffi64.c:669
#8  0x00007f7b286793a8 in wl_closure_invoke (closure=closure@entry=0x7f7afc20c920, flags=flags@entry=1, target=<optimized out>, target@entry=0x5632e2b8da50, opcode=opcode@entry=1, data=<optimized out>) at ../src/connection.c:1018
#9  0x00007f7b28675c48 in dispatch_event (display=display@entry=0x5632dff7ae90, queue=<optimized out>) at ../src/wayland-client.c:1445
#10 0x00007f7b2867721c in dispatch_queue (queue=0x5632dff7af60, display=0x5632dff7ae90) at ../src/wayland-client.c:1591
#11 wl_display_dispatch_queue_pending (display=0x5632dff7ae90, queue=0x5632dff7af60) at ../src/wayland-client.c:1833
#12 0x00007f7b28677280 in wl_display_dispatch_pending (display=<optimized out>) at ../src/wayland-client.c:1896
#13 0x00007f7b26cecf9f in QtWaylandClient::QWaylandDisplay::flushRequests (this=0x5632dff77020) at qwaylanddisplay.cpp:221
#14 0x00007f7b28dff6f0 in doActivate<false> (sender=0x5632dff8ff30, signal_index=4, argv=0x7ffcab089b70) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:395
Comment 3 Nate Graham 2021-02-06 21:52:43 UTC
*** Bug 432560 has been marked as a duplicate of this bug. ***
Comment 4 Nate Graham 2021-02-25 21:13:49 UTC

*** This bug has been marked as a duplicate of bug 431388 ***