<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.kde.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.6"
          urlbase="https://bugs.kde.org/"
          
          maintainer="sysadmin@kde.org"
>

    <bug>
          <bug_id>453931</bug_id>
          
          <creation_ts>2022-05-17 11:46:35 +0000</creation_ts>
          <short_desc>Plasma crash when running Java 17 CLI application, and one of them invokes DBus wrong</short_desc>
          <delta_ts>2022-05-17 21:28:03 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Plasma</classification>
          <product>plasmashell</product>
          <component>generic-crash</component>
          <version>5.24.5</version>
          <rep_platform>openSUSE</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>DUPLICATE</resolution>
          <dup_id>435999</dup_id>
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>drkonqi</keywords>
          <priority>NOR</priority>
          <bug_severity>crash</bug_severity>
          <target_milestone>1.0</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter>alexmateescu</reporter>
          <assigned_to name="Plasma Bugs List">plasma-bugs-null</assigned_to>
          <cc>kde</cc>
    
    <cc>nate</cc>
    
    <cc>nicolas.fella</cc>
          
          <cf_commitlink></cf_commitlink>
          <cf_versionfixedin></cf_versionfixedin>
          <cf_sentryurl></cf_sentryurl>
          <votes>0</votes>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2124097</commentid>
    <comment_count>0</comment_count>
    <who name="">alexmateescu</who>
    <bug_when>2022-05-17 11:46:35 +0000</bug_when>
    <thetext>Application: plasmashell (5.24.5)

Qt Version: 5.15.2
Frameworks Version: 5.93.0
Operating System: Linux 5.17.7-1-default x86_64
Windowing System: X11
Distribution: openSUSE Tumbleweed
DrKonqi: 5.24.5 [KCrashBackend]

-- Information about the crash:
Run a Java app that would open a number of websocket connections

The crash can be reproduced every time.

-- Backtrace:
Application: Plasma (plasmashell), signal: Aborted

[KCrash Handler]
#4  0x00007f2500bfb55c in __pthread_kill_implementation () from /lib64/libc.so.6
#5  0x00007f2500ba86f6 in raise () from /lib64/libc.so.6
#6  0x00007f2500b91814 in abort () from /lib64/libc.so.6
#7  0x00007f24fffede22 in _dbus_abort () at /usr/src/debug/dbus-1-1.14.0-3.2.x86_64/dbus/dbus-sysdeps.c:101
#8  0x00007f25000142a0 in _dbus_warn_check_failed (format=0x7f2500021c70 &quot;arguments to %s() were incorrect, assertion \&quot;%s\&quot; failed in file %s line %d.\nThis is normally a bug in some application using the D-Bus library.\n&quot;) at /usr/src/debug/dbus-1-1.14.0-3.2.x86_64/dbus/dbus-internals.c:289
#9  0x00007f2501cc4c71 in q_dbus_pending_call_block (pending=&lt;optimized out&gt;) at /usr/src/debug/libqt5-qtbase-5.15.2+kde294-5.3.x86_64/src/dbus/qdbus_symbols_p.h:450
#10 QDBusConnectionPrivate::getNameOwnerNoCache (this=this@entry=0x7f24ec004e80, serviceName=...) at qdbusintegrator.cpp:2563
#11 0x00007f2501cc6eeb in QDBusConnectionPrivate::addSignalHook (this=0x7f24ec004e80, key=..., hook=...) at qdbusintegrator.cpp:2298
#12 0x00007f2501cc7ce1 in QtPrivate::FunctorCall&lt;QtPrivate::IndexesList&lt;0, 1&gt;, QtPrivate::List&lt;QString const&amp;, QDBusConnectionPrivate::SignalHook const&amp;&gt;, bool, bool (QDBusConnectionPrivate::*)(QString const&amp;, QDBusConnectionPrivate::SignalHook const&amp;)&gt;::call (arg=0x7ffc87d93740, o=&lt;optimized out&gt;, f=&lt;optimized out&gt;) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:152
#13 QtPrivate::FunctionPointer&lt;bool (QDBusConnectionPrivate::*)(QString const&amp;, QDBusConnectionPrivate::SignalHook const&amp;)&gt;::call&lt;QtPrivate::List&lt;QString const&amp;, QDBusConnectionPrivate::SignalHook const&amp;&gt;, bool&gt; (arg=0x7ffc87d93740, o=&lt;optimized out&gt;, f=&lt;optimized out&gt;) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:185
#14 QtPrivate::QSlotObject&lt;bool (QDBusConnectionPrivate::*)(QString const&amp;, QDBusConnectionPrivate::SignalHook const&amp;), QtPrivate::List&lt;QString const&amp;, QDBusConnectionPrivate::SignalHook const&amp;&gt;, bool&gt;::impl (which=&lt;optimized out&gt;, this_=&lt;optimized out&gt;, r=&lt;optimized out&gt;, a=0x7ffc87d93740, ret=&lt;optimized out&gt;) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:418
#15 0x00007f25012b5660 in QObject::event (this=0x7f24ec004e80, e=0x5605ba6f1010) at kernel/qobject.cpp:1314
#16 0x00007f250128995d in doNotify (event=0x5605ba6f1010, receiver=0x7f24ec004e80) at kernel/qcoreapplication.cpp:1154
#17 QCoreApplication::notify (event=&lt;optimized out&gt;, receiver=&lt;optimized out&gt;, this=&lt;optimized out&gt;) at kernel/qcoreapplication.cpp:1140
#18 QCoreApplication::notifyInternal2 (receiver=0x7f24ec004e80, event=0x5605ba6f1010) at kernel/qcoreapplication.cpp:1064
#19 0x00007f250128c921 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x5605b96d8b00) at kernel/qcoreapplication.cpp:1821
#20 0x00007f25012e1ec3 in postEventSourceDispatch (s=0x7f24ec004bc0) at kernel/qeventdispatcher_glib.cpp:277
#21 0x00007f24ff5a4da0 in g_main_context_dispatch () from /lib64/libglib-2.0.so.0
#22 0x00007f24ff5a5158 in ?? () from /lib64/libglib-2.0.so.0
#23 0x00007f24ff5a51ec in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#24 0x00007f25012e15a6 in QEventDispatcherGlib::processEvents (this=0x7f24ec000b70, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#25 0x00007f25012883fb in QEventLoop::exec (this=this@entry=0x7f24fb895b90, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#26 0x00007f25010a1cf7 in QThread::exec (this=this@entry=0x7f2501d2b060 &lt;(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder&gt;) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#27 0x00007f2501cb2267 in QDBusConnectionManager::run (this=0x7f2501d2b060 &lt;(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder&gt;) at qdbusconnection.cpp:179
#28 0x00007f25010a2eed in QThreadPrivate::start (arg=0x7f2501d2b060 &lt;(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder&gt;) at thread/qthread_unix.cpp:331
#29 0x00007f2500bf9607 in start_thread () from /lib64/libc.so.6
#30 0x00007f2500c83a10 in clone3 () from /lib64/libc.so.6

Thread 2 (Thread 0x7f24fc4da640 (LWP 9028) &quot;QXcbEventQueue&quot;):
#1  0x00007f25033cb91a in poll (__timeout=-1, __nfds=1, __fds=0x7f24fc4d9ac8) at /usr/include/bits/poll2.h:39
#2  _xcb_conn_wait (c=0x5605b9611670, vector=0x0, count=0x0, cond=&lt;optimized out&gt;) at /usr/src/debug/libxcb-1.15-1.2.x86_64/src/xcb_conn.c:508
#3  0x00007f25033cd30c in _xcb_conn_wait (count=0x0, vector=0x0, cond=0x5605b96116b0, c=0x5605b9611670) at /usr/src/debug/libxcb-1.15-1.2.x86_64/src/xcb_conn.c:474
#4  xcb_wait_for_event (c=0x5605b9611670) at /usr/src/debug/libxcb-1.15-1.2.x86_64/src/xcb_in.c:703
#5  0x00007f24fc617510 in QXcbEventQueue::run (this=0x5605b960b810) at qxcbeventqueue.cpp:228
#6  0x00007f25010a2eed in QThreadPrivate::start (arg=0x5605b960b810) at thread/qthread_unix.cpp:331
#7  0x00007f2500bf9607 in start_thread () from /lib64/libc.so.6
#8  0x00007f2500c83a10 in clone3 () from /lib64/libc.so.6

Thread 1 (Thread 0x7f24fe6ebdc0 (LWP 9018) &quot;plasmashell&quot;):
#1  0x00007f25010a4f5b in QtLinuxFutex::_q_futex (val3=0, addr2=0x0, val2=0, val=&lt;optimized out&gt;, op=0, addr=&lt;optimized out&gt;) at thread/qfutex_p.h:116
#2  QtLinuxFutex::futexWait&lt;QBasicAtomicInteger&lt;unsigned int&gt; &gt; (expectedValue=&lt;optimized out&gt;, futex=...) at thread/qfutex_p.h:135
#3  futexSemaphoreTryAcquire_loop&lt;false&gt; (timeout=-1, nn=8589934593, curValue=&lt;optimized out&gt;, u=...) at thread/qsemaphore.cpp:219
#4  futexSemaphoreTryAcquire&lt;false&gt; (timeout=-1, n=n@entry=1, u=..., u@entry=&lt;error reading variable: Cannot access memory at address 0x1ffffff69&gt;) at thread/qsemaphore.cpp:262
#5  QSemaphore::acquire (this=this@entry=0x7ffc87d936c0, n=n@entry=1) at thread/qsemaphore.cpp:326
#6  0x00007f25012c0d39 in doActivate&lt;false&gt; (sender=0x7f24ec004e80, signal_index=7, argv=0x7ffc87d93740) at kernel/qobject.cpp:3867
#7  0x00007f25012ba0cf in QMetaObject::activate (sender=sender@entry=0x7f24ec004e80, m=m@entry=0x7f2501d296a0 &lt;QDBusConnectionPrivate::staticMetaObject&gt;, local_signal_index=local_signal_index@entry=4, argv=argv@entry=0x7ffc87d93740) at kernel/qobject.cpp:3946
#8  0x00007f2501d0ddb3 in QDBusConnectionPrivate::signalNeedsConnecting (this=this@entry=0x7f24ec004e80, _t1=..., _t2=...) at .moc/moc_qdbusconnection_p.cpp:357
#9  0x00007f2501cbc5b6 in QDBusConnectionPrivate::connectRelay (this=0x7f24ec004e80, service=..., path=..., interface=..., receiver=0x7f24ec03e730, signal=...) at qdbusintegrator.cpp:2463
#10 0x00007f25012b69da in QObjectPrivate::connectImpl (sender=0x7f24ec03e730, signal_index=5, receiver=&lt;optimized out&gt;, slot=&lt;optimized out&gt;, slotObj=0x7f24ec0211b0, type=&lt;optimized out&gt;, types=&lt;optimized out&gt;, senderMetaObject=&lt;optimized out&gt;) at kernel/qobject.cpp:5071
#11 0x00007f25012b6cb5 in QObject::connectImpl (sender=sender@entry=0x7f24ec03e730, signal=signal@entry=0x7ffc87d93a10, receiver=receiver@entry=0x7f24f816d070 &lt;KSysGuard::SensorDaemonInterface::instance()::instance&gt;, slot=slot@entry=0x7ffc87d93a20, slotObj=0x7f24ec0211b0, type=Qt::AutoConnection, types=0x0, senderMetaObject=&lt;optimized out&gt;) at kernel/qobject.cpp:5001
#12 0x00007f24f81612c4 in QObject::connect&lt;void (OrgKdeKsystemstatsInterface::*)(QHash&lt;QString, KSysGuard::SensorInfo&gt; const&amp;), void (KSysGuard::SensorDaemonInterface::*)(QHash&lt;QString, KSysGuard::SensorInfo&gt; const&amp;)&gt; (type=Qt::AutoConnection, slot=(void (KSysGuard::SensorDaemonInterface::*)(KSysGuard::SensorDaemonInterface * const, const QHash&lt;QString, KSysGuard::SensorInfo&gt; &amp;)) 0x7f24f815c5b0 &lt;KSysGuard::SensorDaemonInterface::onMetaDataChanged(QHash&lt;QString, KSysGuard::SensorInfo&gt; const&amp;)&gt;, receiver=0x7f24f816d070 &lt;KSysGuard::SensorDaemonInterface::instance()::instance&gt;, signal=(void (OrgKdeKsystemstatsInterface::*)(OrgKdeKsystemstatsInterface * const, const QHash&lt;QString, KSysGuard::SensorInfo&gt; &amp;)) 0x7f24f8133380 &lt;OrgKdeKsystemstatsInterface::sensorMetaDataChanged(QHash&lt;QString, KSysGuard::SensorInfo&gt; const&amp;)&gt;, sender=&lt;optimized out&gt;) at /usr/include/qt5/QtCore/qobject.h:268
#13 KSysGuard::SensorDaemonInterface::reconnect (this=0x7f24f816d070 &lt;KSysGuard::SensorDaemonInterface::instance()::instance&gt;) at /usr/src/debug/libksysguard5-5.24.5-1.2.x86_64/sensors/SensorDaemonInterface.cpp:41
#14 0x00007f25012c0def in QtPrivate::QSlotObjectBase::call (a=0x7ffc87d93b40, r=0x7f24f816d070 &lt;KSysGuard::SensorDaemonInterface::instance()::instance&gt;, this=0x5605b9a910d0) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#15 doActivate&lt;false&gt; (sender=0x5605b9aab660, signal_index=4, argv=0x7ffc87d93b40) at kernel/qobject.cpp:3886
#16 0x00007f25012ba0cf in QMetaObject::activate (sender=&lt;optimized out&gt;, m=m@entry=0x7f2501d292c0, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x7ffc87d93b40) at kernel/qobject.cpp:3946
#17 0x00007f2501d0bdf5 in QDBusServiceWatcher::serviceUnregistered (this=&lt;optimized out&gt;, _t1=...) at .moc/moc_qdbusservicewatcher.cpp:235
#18 0x00007f2501d0c6fd in QDBusServiceWatcherPrivate::_q_serviceOwnerChanged (newOwner=..., oldOwner=..., service=..., this=&lt;optimized out&gt;) at qdbusservicewatcher.cpp:80
#19 0x00007f2501d0cc13 in QDBusServiceWatcher::qt_metacall (this=0x5605b9aab660, _c=QMetaObject::InvokeMetaMethod, _id=3, _a=0x7ffc87d93c60) at .moc/moc_qdbusservicewatcher.cpp:197
#20 0x00007f2501cbe66b in QDBusConnectionPrivate::deliverCall (this=&lt;optimized out&gt;, object=&lt;optimized out&gt;, msg=..., metaTypes=..., slotIdx=&lt;optimized out&gt;) at ../../include/QtCore/../../src/corelib/tools/qvarlengtharray.h:189
#21 0x00007f25012b5660 in QObject::event (this=0x5605b9aab660, e=0x7f24ec0765b0) at kernel/qobject.cpp:1314
#22 0x00007f250202837e in QApplicationPrivate::notify_helper (this=&lt;optimized out&gt;, receiver=0x5605b9aab660, e=0x7f24ec0765b0) at kernel/qapplication.cpp:3632
#23 0x00007f2501289988 in QCoreApplication::notifyInternal2 (receiver=0x5605b9aab660, event=0x7f24ec0765b0) at kernel/qcoreapplication.cpp:1064
#24 0x00007f250128c921 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x5605b95bba90) at kernel/qcoreapplication.cpp:1821
#25 0x00007f25012e1ec3 in postEventSourceDispatch (s=0x5605b96ca050) at kernel/qeventdispatcher_glib.cpp:277
#26 0x00007f24ff5a4da0 in g_main_context_dispatch () from /lib64/libglib-2.0.so.0
#27 0x00007f24ff5a5158 in ?? () from /lib64/libglib-2.0.so.0
#28 0x00007f24ff5a51ec in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#29 0x00007f25012e15a6 in QEventDispatcherGlib::processEvents (this=0x5605b96d4b50, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#30 0x00007f25012883fb in QEventLoop::exec (this=this@entry=0x7ffc87d940a0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#31 0x00007f2501290566 in QCoreApplication::exec () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#32 0x00007f25016d93bc in QGuiApplication::exec () at kernel/qguiapplication.cpp:1867
#33 0x00007f25020282f5 in QApplication::exec () at kernel/qapplication.cpp:2824
#34 0x00005605b80ca72e in main (argc=&lt;optimized out&gt;, argv=&lt;optimized out&gt;) at /usr/src/debug/plasma5-workspace-5.24.5-1.3.x86_64/shell/main.cpp:238
[Inferior 1 (process 9018) detached]

Possible duplicates by query: bug 437818, bug 432216, bug 405751.

Reported using DrKonqi</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2124169</commentid>
    <comment_count>1</comment_count>
    <who name="Nate Graham">nate</who>
    <bug_when>2022-05-17 15:24:13 +0000</bug_when>
    <thetext>#8  0x00007f25000142a0 in _dbus_warn_check_failed (format=0x7f2500021c70 &quot;arguments to %s() were incorrect, assertion \&quot;%s\&quot; failed in file %s line %d.\nThis is normally a bug in some application using the D-Bus library.\n&quot;) at /usr/src/debug/dbus-1-1.14.0-3.2.x86_64/dbus/dbus-internals.c:289

Question is whether Plasma is using DBus wrong here, or the app is and Plasma is at fault for crashing rather than doing something more sensible.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2124185</commentid>
    <comment_count>2</comment_count>
    <who name="Nicolas Fella">nicolas.fella</who>
    <bug_when>2022-05-17 15:45:25 +0000</bug_when>
    <thetext>I doubt it has any tangible relation to the Java app. The crash is somewhere deep in Qt&apos;s DBus handling, and looking at the possible duplicates there&apos;s similar crashes that don&apos;t mention Java apps.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2124186</commentid>
    <comment_count>3</comment_count>
    <who name="Nicolas Fella">nicolas.fella</who>
    <bug_when>2022-05-17 15:54:14 +0000</bug_when>
    <thetext>What seems to happen is that the ksystemstats DBus service disappears, which sets off a chain of events that eventually leads to this crash

#17 0x00007f2501d0bdf5 in QDBusServiceWatcher::serviceUnregistered (this=&lt;optimized out&gt;, _t1=...) at .moc/moc_qdbusservicewatcher.cpp:235

leads to
#13 KSysGuard::SensorDaemonInterface::reconnect (this=0x7f24f816d070 &lt;KSysGuard::SensorDaemonInterface::instance()::instance&gt;) at /usr/src/debug/libksysguard5-5.24.5-1.2.x86_64/sensors/SensorDaemonInterface.cpp:41

leads to
#8  0x00007f2501d0ddb3 in QDBusConnectionPrivate::signalNeedsConnecting (this=this@entry=0x7f24ec004e80, _t1=..., _t2=...) at .moc/moc_qdbusconnection_p.cpp:357

leads to
#11 0x00007f2501cc6eeb in QDBusConnectionPrivate::addSignalHook (this=0x7f24ec004e80, key=..., hook=...) at qdbusintegrator.cpp:2298

leads to
#10 QDBusConnectionPrivate::getNameOwnerNoCache (this=this@entry=0x7f24ec004e80, serviceName=...) at qdbusintegrator.cpp:2563

which is where it goes wrong in Qt code. But no idea what exactly is wrong there.

Manually killing systemstats doesn&apos;t make anything crash here</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2124189</commentid>
    <comment_count>4</comment_count>
    <who name="Nicolas Fella">nicolas.fella</who>
    <bug_when>2022-05-17 16:13:20 +0000</bug_when>
    <thetext>

*** This bug has been marked as a duplicate of bug 435999 ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2124274</commentid>
    <comment_count>5</comment_count>
    <who name="">alexmateescu</who>
    <bug_when>2022-05-17 21:28:03 +0000</bug_when>
    <thetext>This may be relevant: I have seen this after Tumbleweed pushed their GCC12 compiled packages.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>