Bug 475046

Summary: Sometimes Plasma crashes when I hover over grouped tasks
Product: [Plasma] plasmashell Reporter: Patrick Silva <bugseforuns>
Component: generic-crashAssignee: Plasma Bugs List <plasma-bugs-null>
Status: RESOLVED FIXED    
Severity: crash CC: nate, notmart
Priority: NOR Keywords: drkonqi, qt6
Version First Reported In: master   
Target Milestone: 1.0   
Platform: unspecified   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:
Attachments: New crash information added by DrKonqi

Description Patrick Silva 2023-09-30 12:56:18 UTC
Application: plasmashell (5.27.80)

Qt Version: 6.6.0
Frameworks Version: 5.240.0
Operating System: Linux 6.5.1-060501-generic x86_64
Windowing System: Wayland
Distribution: KDE neon Unstable Edition
DrKonqi: 5.27.80 [CoredumpBackend]

-- Information about the crash:
make sure the preview of tasks on mouseover is enabled, have tasks grouped in the task manager, hover over the grouped tasks repeatedly. At some point, Plasma crashes.

The crash can be reproduced sometimes.

-- Backtrace (Reduced):
#3  0x00007f89e73f6d90 in typeinfo name for QObjectCleanupHandler () at /lib/x86_64-linux-gnu/libQt6Core.so.6
[...]
#5  0x00007f89e2ec26dd in QtWaylandClient::QWaylandGLContext::makeCurrent(QPlatformSurface*) () at /lib/x86_64-linux-gnu/libQt6WaylandEglClientHwIntegration.so.6
#6  0x00007f89e7a862a2 in QOpenGLContext::makeCurrent(QSurface*) (this=0x7f89344d95b0, surface=surface@entry=0x55ebc9b42e90) at ./src/gui/kernel/qopenglcontext.cpp:656
#7  0x00007f89e7a996c1 in QRhiGles2::ensureContext(QSurface*) const (this=0x7f893423a630, surface=0x55ebc9b42e90) at ./src/gui/rhi/qrhigles2.cpp:619
#8  0x00007f89e7aa39ed in QRhiGles2::beginFrame(QRhiSwapChain*, QFlags<QRhi::BeginFrameFlag>) (this=0x7f893423a630, swapChain=0x7f8934729410) at ./src/gui/rhi/qrhigles2.cpp:2028


Reported using DrKonqi
Comment 1 Patrick Silva 2023-09-30 12:56:21 UTC
Created attachment 161972 [details]
New crash information added by DrKonqi

DrKonqi auto-attaching complete backtrace.
Comment 2 Nate Graham 2023-10-07 02:38:52 UTC
Thread 1 (Thread 0x7f89e2ed9fc0 (LWP 8079)):
[KCrash Handler]
#6  __pthread_kill_implementation (no_tid=0, signo=11, threadid=140230194470848) at ./nptl/pthread_kill.c:44
#7  __pthread_kill_internal (signo=11, threadid=140230194470848) at ./nptl/pthread_kill.c:78
#8  __GI___pthread_kill (threadid=140230194470848, signo=signo@entry=11) at ./nptl/pthread_kill.c:89
#9  0x00007f89e6842476 in __GI_raise (sig=11) at ../sysdeps/posix/raise.c:26
#10 0x00007f89e6842520 in <signal handler called> () at /lib/x86_64-linux-gnu/libc.so.6
#11 0x00007f89e6891195 in __futex_abstimed_wait_common64 (private=0, cancel=true, abstime=0x0, op=393, expected=0, futex_word=0x55ebcac75310) at ./nptl/futex-internal.c:57
#12 __futex_abstimed_wait_common (cancel=true, private=0, abstime=0x0, clockid=0, expected=0, futex_word=0x55ebcac75310) at ./nptl/futex-internal.c:87
#13 __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x55ebcac75310, expected=expected@entry=0, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0) at ./nptl/futex-internal.c:139
#14 0x00007f89e6893ac1 in __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x55ebcac752c0, cond=0x55ebcac752e8) at ./nptl/pthread_cond_wait.c:503
#15 ___pthread_cond_wait (cond=0x55ebcac752e8, mutex=0x55ebcac752c0) at ./nptl/pthread_cond_wait.c:627
#16 0x00007f89e72d6edb in QWaitConditionPrivate::wait(QDeadlineTimer) (deadline=..., this=0x55ebcac752c0) at ./src/corelib/thread/qwaitcondition_unix.cpp:103
#17 QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=<optimized out>, mutex=0x55ebcae27818, deadline=...) at ./src/corelib/thread/qwaitcondition_unix.cpp:181
#18 0x00007f89e9413842 in QSGThreadedRenderLoop::handleObscurity(QSGThreadedRenderLoop::Window*) (this=0x55ebc83c14f0, w=0x55ebcb9c5130) at /usr/include/x86_64-linux-gnu/qt6/QtCore/qdeadlinetimer.h:31
#19 0x00007f89e940a25a in QSGThreadedRenderLoop::handleObscurity(QSGThreadedRenderLoop::Window*) (w=<optimized out>, this=0x55ebc83c14f0) at ./src/quick/scenegraph/qsgthreadedrenderloop.cpp:1322
#20 QSGThreadedRenderLoop::hide(QQuickWindow*) (this=0x55ebc83c14f0, window=0x55ebc9b42e80) at ./src/quick/scenegraph/qsgthreadedrenderloop.cpp:1123
#21 0x00007f89e780c4a8 in QWindow::event(QEvent*) (this=0x55ebc9b42e80, ev=0x7ffc800af580) at ./src/gui/kernel/qwindow.cpp:2549
#22 0x00007f89e8189576 in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x55ebc9b42e80, e=0x7ffc800af580) at ./src/widgets/kernel/qapplication.cpp:3287
#23 0x00007f89e715a3d8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x55ebc9b42e80, event=0x7ffc800af580) at ./src/corelib/kernel/qcoreapplication.cpp:1118
#24 0x00007f89e780bc0f in QWindowPrivate::setVisible(bool) (this=0x55ebc9c07c80, visible=<optimized out>) at ./src/gui/kernel/qwindow.cpp:400
#25 0x00007f89e71b0db7 in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7ffc800af6c0, r=0x55ebc9b42e80, this=<optimized out>) at ./src/corelib/kernel/qobjectdefs_impl.h:433
#26 doActivate<false>(QObject*, int, void**) (sender=0x55ebc9c875b0, signal_index=3, argv=0x7ffc800af6c0) at ./src/corelib/kernel/qobject.cpp:4021
#27 0x00007f89e71ab417 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=<optimized out>, m=m@entry=0x7f89e7586540 <QTimer::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffc800af6c0) at ./src/corelib/kernel/qobject.cpp:4081
#28 0x00007f89e71bdace in QTimer::timeout(QTimer::QPrivateSignal) (this=<optimized out>, _t1=...) at ./obj-x86_64-linux-gnu/src/corelib/Core_autogen/include/moc_qtimer.cpp:272
#29 0x00007f89e71a7d4f in QObject::event(QEvent*) (this=0x55ebc9c875b0, e=0x7ffc800af840) at ./src/corelib/kernel/qobject.cpp:1459
#30 0x00007f89e8189576 in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x55ebc9c875b0, e=0x7ffc800af840) at ./src/widgets/kernel/qapplication.cpp:3287
#31 0x00007f89e715a3d8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x55ebc9c875b0, event=0x7ffc800af840) at ./src/corelib/kernel/qcoreapplication.cpp:1118
#32 0x00007f89e72cd0c3 in QTimerInfoList::activateTimers() (this=0x55ebc7512330) at ./src/corelib/kernel/qtimerinfo_unix.cpp:507
#33 0x00007f89e73b5d6c in timerSourceDispatch(GSource*, GSourceFunc, gpointer) (source=<optimized out>) at ./src/corelib/kernel/qeventdispatcher_glib.cpp:149
#34 0x00007f89e5e19d3b in g_main_dispatch (context=0x7f89dc005040) at ../../../glib/gmain.c:3419
#35 g_main_context_dispatch (context=0x7f89dc005040) at ../../../glib/gmain.c:4137
#36 0x00007f89e5e6f258 in g_main_context_iterate.constprop.0 (context=context@entry=0x7f89dc005040, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../../../glib/gmain.c:4213
#37 0x00007f89e5e173e3 in g_main_context_iteration (context=0x7f89dc005040, may_block=1) at ../../../glib/gmain.c:4278
#38 0x00007f89e73b601e in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x55ebc74a4a50, flags=...) at ./src/corelib/kernel/qeventdispatcher_glib.cpp:393
#39 0x00007f89e7167053 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffc800afa90, flags=..., flags@entry=...) at ./src/corelib/global/qflags.h:34
#40 0x00007f89e7162f86 in QCoreApplication::exec() () at ./src/corelib/global/qflags.h:74
#41 0x00007f89e77aa4f0 in QGuiApplication::exec() () at ./src/gui/kernel/qguiapplication.cpp:1909
#42 0x00007f89e81894e9 in QApplication::exec() () at ./src/widgets/kernel/qapplication.cpp:2566
#43 0x000055ebc6567386 in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at ./shell/main.cpp:236
Comment 3 Marco Martin 2023-11-23 16:30:01 UTC
nvidia by any chance?
Comment 4 Patrick Silva 2023-11-23 16:31:30 UTC
No, intel iGPU.
Comment 5 Nate Graham 2024-02-05 22:22:17 UTC
Have you been able to reproduce this with the latest Plasma 6 code?
Comment 6 Patrick Silva 2024-02-05 23:09:09 UTC
Tested on Arch Linux running Plasma 6 RC2 and neon unstable; cannot reproduce.