Bug 468243 - plasmashell crashes randomly in NVIDIA driver
Summary: plasmashell crashes randomly in NVIDIA driver
Status: CLOSED UPSTREAM
Alias: None
Product: plasmashell
Classification: Plasma
Component: generic-crash (show other bugs)
Version: 5.27.4
Platform: Arch Linux Linux
: NOR crash
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2023-04-07 13:22 UTC by Leo
Modified: 2023-04-10 22:54 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Leo 2023-04-07 13:22:29 UTC
Application: plasmashell (5.27.4)

Qt Version: 5.15.8
Frameworks Version: 5.104.0
Operating System: Linux 6.2.9-arch1-1 x86_64
Windowing System: X11
Distribution: "Arch Linux"
DrKonqi: 5.27.4 [KCrashBackend]

-- Information about the crash:
I can't reproduce it. It sometimes happens when a notification gets played

The crash can be reproduced sometimes.

-- Backtrace:
Application: Plasma (plasmashell), signal: Segmentation fault
Content of s_kcrashErrorMessage: std::unique_ptr<char []> = {get() = 0x0}
[KCrash Handler]
#6  0x00007efdb6a78537 in ?? () from /usr/lib/libnvidia-glcore.so.530.41.03
#7  0x00007efdb6a789a3 in ?? () from /usr/lib/libnvidia-glcore.so.530.41.03
#8  0x00007efdb696b6f9 in ?? () from /usr/lib/libnvidia-glcore.so.530.41.03
#9  0x00007efdb694550f in ?? () from /usr/lib/libnvidia-glcore.so.530.41.03
#10 0x00007efdb6945b96 in ?? () from /usr/lib/libnvidia-glcore.so.530.41.03
#11 0x00007efdb6939fe7 in ?? () from /usr/lib/libnvidia-glcore.so.530.41.03
#12 0x00007efdb68f71f5 in ?? () from /usr/lib/libnvidia-glcore.so.530.41.03
#13 0x00007efdbe753160 in ?? () from /usr/lib/libGLX_nvidia.so.0
#14 0x00007efdbe77ffbb in ?? () from /usr/lib/libGLX_nvidia.so.0
#15 0x00007efdc2e8ee73 in InternalMakeCurrentVendor (dpy=dpy@entry=0x5616cb149a30, draw=draw@entry=27263071, read=read@entry=27263071, ctxInfo=ctxInfo@entry=0x5616ce093600, callerOpcode=callerOpcode@entry=5 '\005', threadState=threadState@entry=0x7efd500019d0, vendor=0x5616cb2d0650) at ../libglvnd-v1.6.0/src/GLX/libglx.c:871
#16 0x00007efdc2e91214 in InternalMakeCurrentDispatch (dpy=dpy@entry=0x5616cb149a30, draw=draw@entry=27263071, read=read@entry=27263071, ctxInfo=0x5616ce093600, callerOpcode=callerOpcode@entry=5 '\005', vendor=0x5616cb2d0650) at ../libglvnd-v1.6.0/src/GLX/libglx.c:926
#17 0x00007efdc2e95dc7 in CommonMakeCurrent (dpy=0x5616cb149a30, draw=27263071, read=27263071, context=0x5616cd7133e8, callerOpcode=<optimized out>) at ../libglvnd-v1.6.0/src/GLX/libglx.c:1070
#18 0x00007efdbfdf0c19 in QGLXContext::makeCurrent (this=this@entry=0x5616cdf91b90, surface=0x5616cce82a00) at /usr/src/debug/qt5-base/qtbase/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp:571
#19 0x00007efdc538139c in QOpenGLContext::makeCurrent (this=0x7efdb0004890, surface=0x5616cce7d3a0) at kernel/qopenglcontext.cpp:992
#20 0x00007efdc69fd1c8 in QSGRenderThread::run (this=0x5616cdf93140) at /usr/src/debug/qt5-declarative/qtdeclarative/src/quick/scenegraph/qsgthreadedrenderloop.cpp:1034
#21 0x00007efdc4ce432a in QThreadPrivate::start (arg=0x5616cdf93140) at thread/qthread_unix.cpp:330
#22 0x00007efdc469ebb5 in start_thread (arg=<optimized out>) at pthread_create.c:444
#23 0x00007efdc4720d90 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81

Thread 5 (Thread 0x7efd5f1ff6c0 (LWP 12363) "CPMMListener"):
#1  __GI___lll_lock_wait (futex=futex@entry=0x7efdb7f53c40, private=0) at lowlevellock.c:49
#2  0x00007efdc46a1efa in lll_mutex_lock_optimized (mutex=0x7efdb7f53c40) at pthread_mutex_lock.c:48
#3  ___pthread_mutex_lock (mutex=0x7efdb7f53c40) at pthread_mutex_lock.c:128
#4  0x00007efdb690ed63 in ?? () from /usr/lib/libnvidia-glcore.so.530.41.03
#5  0x00007efdb6913944 in ?? () from /usr/lib/libnvidia-glcore.so.530.41.03
#6  0x00007efdb6913d5a in ?? () from /usr/lib/libnvidia-glcore.so.530.41.03
#7  0x00007efdb691162a in ?? () from /usr/lib/libnvidia-glcore.so.530.41.03
#8  0x00007efdc469ebb5 in start_thread (arg=<optimized out>) at pthread_create.c:444
#9  0x00007efdc4720d90 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81

Thread 4 (Thread 0x7efd9e99f6c0 (LWP 12351) "QSGRenderThread"):
#1  __futex_abstimed_wait_common (futex_word=futex_word@entry=0x5616cc6b83d0, expected=expected@entry=0, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0, cancel=cancel@entry=true) at futex-internal.c:87
#2  0x00007efdc469b7cf in __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x5616cc6b83d0, expected=expected@entry=0, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0) at futex-internal.c:139
#3  0x00007efdc469df90 in __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x5616cc6b8380, cond=0x5616cc6b83a8) at pthread_cond_wait.c:503
#4  ___pthread_cond_wait (cond=0x5616cc6b83a8, mutex=0x5616cc6b8380) at pthread_cond_wait.c:618
#5  0x00007efdc4ceb7c4 in QWaitConditionPrivate::wait (deadline=..., this=0x5616cc6b8380) at thread/qwaitcondition_unix.cpp:146
#6  QWaitCondition::wait (this=this@entry=0x5616cb9b2ad8, mutex=mutex@entry=0x5616cb9b2ad0, deadline=...) at thread/qwaitcondition_unix.cpp:225
#7  0x00007efdc69fd393 in QSGRenderThreadEventQueue::takeEvent (wait=true, this=0x5616cb9b2ac8) at /usr/src/debug/qt5-declarative/qtdeclarative/src/quick/scenegraph/qsgthreadedrenderloop.cpp:257
#8  QSGRenderThread::processEventsAndWaitForMore (this=0x5616cb9b2a30) at /usr/src/debug/qt5-declarative/qtdeclarative/src/quick/scenegraph/qsgthreadedrenderloop.cpp:935
#9  QSGRenderThread::run (this=0x5616cb9b2a30) at /usr/src/debug/qt5-declarative/qtdeclarative/src/quick/scenegraph/qsgthreadedrenderloop.cpp:1052
#10 0x00007efdc4ce432a in QThreadPrivate::start (arg=0x5616cb9b2a30) at thread/qthread_unix.cpp:330
#11 0x00007efdc469ebb5 in start_thread (arg=<optimized out>) at pthread_create.c:444
#12 0x00007efdc4720d90 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81

Thread 3 (Thread 0x7efdbd3ff6c0 (LWP 12346) "QQmlThread"):
#1  __GI___libc_read (fd=25, buf=buf@entry=0x7efdbd3fe820, nbytes=nbytes@entry=8) at ../sysdeps/unix/sysv/linux/read.c:24
#2  0x00007efdc3ce0c20 in read (__nbytes=<optimized out>, __buf=<optimized out>, __fd=<optimized out>, __fd=<optimized out>, __buf=<optimized out>, __nbytes=<optimized out>) at /usr/include/bits/unistd.h:38
#3  g_wakeup_acknowledge (wakeup=<optimized out>) at ../glib/glib/gwakeup.c:216
#4  g_wakeup_acknowledge (wakeup=0x7efdac000df0) at ../glib/glib/gwakeup.c:208
#5  0x00007efdc3c95ba7 in g_main_context_check (context=0x7efdac000c30, max_priority=2147483647, fds=0x7efdac0013d0, n_fds=1) at ../glib/glib/gmain.c:4021
#6  0x00007efdc3cf2078 in g_main_context_iterate.constprop.0 (context=0x7efdac000c30, block=1, dispatch=1, self=<optimized out>) at ../glib/glib/gmain.c:4273
#7  0x00007efdc3c941a2 in g_main_context_iteration (context=0x7efdac000c30, may_block=1) at ../glib/glib/gmain.c:4343
#8  0x00007efdc4ed8c8f in QEventDispatcherGlib::processEvents (this=0x7efdac000b70, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#9  0x00007efdc4e866ec in QEventLoop::exec (this=0x7efdbd3feaa0, flags=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#10 0x00007efdc4ce725f in QThread::exec (this=this@entry=0x5616cbab36d0) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#11 0x00007efdc64c00e0 in QQmlThreadPrivate::run (this=0x5616cbab36d0) at /usr/src/debug/qt5-declarative/qtdeclarative/src/qml/qml/ftw/qqmlthread.cpp:155
#12 0x00007efdc4ce432a in QThreadPrivate::start (arg=0x5616cbab36d0) at thread/qthread_unix.cpp:330
#13 0x00007efdc469ebb5 in start_thread (arg=<optimized out>) at pthread_create.c:444
#14 0x00007efdc4720d90 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81

Thread 2 (Thread 0x7efdbfc036c0 (LWP 12344) "QDBusConnection"):
#1  0x00007efdc3cf217f in g_main_context_poll (priority=<optimized out>, n_fds=1, fds=0x7efdb8013ee0, timeout=<optimized out>, context=0x7efdb8000c50) at ../glib/glib/gmain.c:4584
#2  g_main_context_iterate.constprop.0 (context=0x7efdb8000c50, block=1, dispatch=1, self=<optimized out>) at ../glib/glib/gmain.c:4271
#3  0x00007efdc3c941a2 in g_main_context_iteration (context=0x7efdb8000c50, may_block=1) at ../glib/glib/gmain.c:4343
#4  0x00007efdc4ed8c8f in QEventDispatcherGlib::processEvents (this=0x7efdb8000b70, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#5  0x00007efdc4e866ec in QEventLoop::exec (this=0x7efdbfc02a90, flags=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#6  0x00007efdc4ce725f in QThread::exec (this=this@entry=0x7efdc61ff560 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#7  0x00007efdc61a3cba in QDBusConnectionManager::run (this=0x7efdc61ff560 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at /usr/src/debug/qt5-base/qtbase/src/dbus/qdbusconnection.cpp:179
#8  0x00007efdc4ce432a in QThreadPrivate::start (arg=0x7efdc61ff560 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread_unix.cpp:330
#9  0x00007efdc469ebb5 in start_thread (arg=<optimized out>) at pthread_create.c:444
#10 0x00007efdc4720d90 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81

Thread 1 (Thread 0x7efdc0152f80 (LWP 12343) "plasmashell"):
#1  __futex_abstimed_wait_common (futex_word=futex_word@entry=0x5616cdf93700, expected=expected@entry=0, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0, cancel=cancel@entry=true) at futex-internal.c:87
#2  0x00007efdc469b7cf in __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x5616cdf93700, expected=expected@entry=0, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0) at futex-internal.c:139
#3  0x00007efdc469df90 in __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x5616cdf936b0, cond=0x5616cdf936d8) at pthread_cond_wait.c:503
#4  ___pthread_cond_wait (cond=0x5616cdf936d8, mutex=0x5616cdf936b0) at pthread_cond_wait.c:618
#5  0x00007efdc4ceb7c4 in QWaitConditionPrivate::wait (deadline=..., this=0x5616cdf936b0) at thread/qwaitcondition_unix.cpp:146
#6  QWaitCondition::wait (this=<optimized out>, mutex=0x5616cdf93198, deadline=...) at thread/qwaitcondition_unix.cpp:225
#7  0x00007efdc6a024d0 in QSGThreadedRenderLoop::polishAndSync (this=this@entry=0x5616cc382fd0, w=w@entry=0x5616cdf93040, inExpose=inExpose@entry=true) at /usr/src/debug/qt5-declarative/qtdeclarative/src/quick/scenegraph/qsgthreadedrenderloop.cpp:1603
#8  0x00007efdc6a032c1 in QSGThreadedRenderLoop::handleExposure (window=<optimized out>, this=0x5616cc382fd0) at /usr/src/debug/qt5-declarative/qtdeclarative/src/quick/scenegraph/qsgthreadedrenderloop.cpp:1374
#9  QSGThreadedRenderLoop::exposureChanged (this=0x5616cc382fd0, window=<optimized out>) at /usr/src/debug/qt5-declarative/qtdeclarative/src/quick/scenegraph/qsgthreadedrenderloop.cpp:1268
#10 0x00007efdc53559f7 in QWindow::event (this=0x5616cce7d390, ev=<optimized out>) at kernel/qwindow.cpp:2429
#11 0x00007efdc5b78b5c in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x5616cce7d390, e=0x7ffd4da93910) at kernel/qapplication.cpp:3640
#12 0x00007efdc4e8df48 in QCoreApplication::notifyInternal2 (receiver=0x5616cce7d390, event=0x7ffd4da93910) at kernel/qcoreapplication.cpp:1064
#13 0x00007efdc4e8dfd3 in QCoreApplication::sendSpontaneousEvent (receiver=<optimized out>, event=<optimized out>) at kernel/qcoreapplication.cpp:1474
#14 0x00007efdc53498a4 in QGuiApplicationPrivate::processExposeEvent (e=0x5616cc9c3a40) at kernel/qguiapplication.cpp:3261
#15 0x00007efdc53288d5 in QWindowSystemInterface::sendWindowSystemEvents (flags=flags@entry=...) at kernel/qwindowsysteminterface.cpp:1169
#16 0x00007efdbfcfd8d0 in xcbSourceDispatch (source=<optimized out>) at /usr/src/debug/qt5-base/qtbase/src/plugins/platforms/xcb/qxcbeventdispatcher.cpp:105
#17 0x00007efdc3c9553b in g_main_dispatch (context=0x7efdb8000ee0) at ../glib/glib/gmain.c:3460
#18 g_main_context_dispatch (context=0x7efdb8000ee0) at ../glib/glib/gmain.c:4200
#19 0x00007efdc3cf2219 in g_main_context_iterate.constprop.0 (context=0x7efdb8000ee0, block=1, dispatch=1, self=<optimized out>) at ../glib/glib/gmain.c:4276
#20 0x00007efdc3c941a2 in g_main_context_iteration (context=0x7efdb8000ee0, may_block=1) at ../glib/glib/gmain.c:4343
#21 0x00007efdc4ed8c6c in QEventDispatcherGlib::processEvents (this=0x5616cb2ce490, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#22 0x00007efdc4e866ec in QEventLoop::exec (this=0x7ffd4da93bf0, flags=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#23 0x00007efdc4e91219 in QCoreApplication::exec () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#24 0x00007efdc533a052 in QGuiApplication::exec () at kernel/qguiapplication.cpp:1870
#25 0x00007efdc5b76f2a in QApplication::exec () at kernel/qapplication.cpp:2832
#26 0x00005616ca06e168 in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/plasma-workspace/plasma-workspace-5.27.4.1/shell/main.cpp:235
[Inferior 1 (process 12343) detached]

Reported using DrKonqi
Comment 1 Nate Graham 2023-04-10 17:41:09 UTC
Thanks for the backtrace. It indicates that Plasma is crashing in the library for the NVIDIA driver, which is closed source so unfortunately we can't debug it on our side. Please report this issue to the NVIDIA folks, either by sending an email to linux-bugs@nvidia.com or making a post at https://forums.developer.nvidia.com/c/gpu-graphics/linux. It would be helpful to the NVIDIA developers if you could run nvidia-bug-report.sh and attach the resulting file in your report. Thanks!
Comment 2 Leo 2023-04-10 22:54:04 UTC
@Nate Graham Thanks. Will do.