Bug 451148

Summary: plasma-systemmonitor crashes at KSysGuard::Processes::getProcess
Product: [Applications] plasma-systemmonitor Reporter: Fushan Wen <qydwhotmail>
Component: generalAssignee: KSysGuard Developers <ksysguard-bugs>
Status: RESOLVED FIXED    
Severity: crash CC: ahiemstra, bugseforuns, cfeck, nate, plasma-bugs-null
Priority: NOR Keywords: drkonqi
Version First Reported In: master   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Fushan Wen 2022-03-05 01:20:58 UTC
SUMMARY
plasma-systemmonitor crashes after the summary interface is shown.


STEPS TO REPRODUCE
1. Open plasma-systemmonitor
2. Crash

OBSERVED RESULT


EXPECTED RESULT


SOFTWARE/OS VERSIONS
Application: plasma-systemmonitor (5.24.80)

Qt Version: 5.15.2
Frameworks Version: 5.92.0
Operating System: Linux 5.16.11-1-default x86_64
Windowing System: X11
Distribution: "openSUSE Tumbleweed"
DrKonqi: 5.24.80 [KCrashBackend]

-- Information about the crash:
<In detail, tell us what you were doing  when the application crashed.>

The crash can be reproduced sometimes.

-- Backtrace:
Application: System Monitor (plasma-systemmonitor), signal: Segmentation fault
Content of s_kcrashErrorMessage: std::unique_ptr<char []> = {get() = 0x0}
[KCrash Handler]
#6  0x00007faed403c556 in QHash<long, KSysGuard::Process*>::value (akey=<synthetic pointer>: 3063, this=<error reading variable: Cannot access memory at address 0x10>) at /usr/include/qt5/QtCore/qhash.h:656
#7  KSysGuard::Processes::getProcess (this=0x0, pid=3063) at /usr/src/debug/libksysguard5-5.24.80git.20220228T165743~1b36ab8c-ku.14.1.x86_64/processcore/processes.cpp:109
#8  0x00007faed404c329 in KSysGuard::ProcessDataProvider::getProcess (this=0x55fdc694f000, pid=3063) at /usr/src/debug/libksysguard5-5.24.80git.20220228T165743~1b36ab8c-ku.14.1.x86_64/processcore/process_data_provider.cpp:44
#9  0x00007faed68e0866 in operator() (__closure=<optimized out>) at /usr/src/debug/libksysguard5-5.24.80git.20220228T165743~1b36ab8c-ku.14.1.x86_64/processcore/plugins/network/network.cpp:79
#10 QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, NetworkPlugin::NetworkPlugin(QObject*, const QVariantList&)::<lambda()> >::call (arg=<optimized out>, f=...) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:146
#11 QtPrivate::Functor<NetworkPlugin::NetworkPlugin(QObject*, const QVariantList&)::<lambda()>, 0>::call<QtPrivate::List<>, void> (arg=<optimized out>, f=...) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:256
#12 QtPrivate::QFunctorSlotObject<NetworkPlugin::NetworkPlugin(QObject*, const QVariantList&)::<lambda()>, 0, QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void **, bool *) (which=<optimized out>, this_=0x55fdc694a160, r=<optimized out>, a=<optimized out>, ret=<optimized out>) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:443
#13 0x00007faf2e5a8503 in QtPrivate::QSlotObjectBase::call (a=0x7fffe50704b0, r=0x55fdc694f000, this=0x55fdc694a160) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#14 doActivate<false> (sender=0x55fdc6949f10, signal_index=15, argv=0x7fffe50704b0) at kernel/qobject.cpp:3886
#15 0x00007faf2e5a19cf in QMetaObject::activate (sender=<optimized out>, m=m@entry=0x7faf2e8456e0 <QProcess::staticMetaObject>, local_signal_index=local_signal_index@entry=6, argv=argv@entry=0x7fffe50704b0) at kernel/qobject.cpp:3946
#16 0x00007faf2e4dd34d in QProcess::readyReadStandardOutput (this=<optimized out>, _t1=...) at .moc/moc_qprocess.cpp:367
#17 0x00007faf2e4e2add in QProcessPrivate::tryReadFromChannel (this=0x55fdc6949f30, channel=0x55fdc694a040) at io/qprocess.cpp:1073
#18 0x00007faf2e4e3015 in QProcessPrivate::_q_canReadStandardError (this=<optimized out>) at io/qprocess.cpp:1092
#19 QProcess::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=0x7fffe5070650) at .moc/moc_qprocess.cpp:210
#20 0x00007faf2e5a8538 in doActivate<false> (sender=0x55fdc6b012d0, signal_index=3, argv=0x7fffe5070650) at kernel/qobject.cpp:3898
#21 0x00007faf2e5a19cf in QMetaObject::activate (sender=sender@entry=0x55fdc6b012d0, m=m@entry=0x7faf2e847ac0 <QSocketNotifier::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7fffe5070650) at kernel/qobject.cpp:3946
#22 0x00007faf2e5ab8df in QSocketNotifier::activated (this=this@entry=0x55fdc6b012d0, _t1=..., _t2=<optimized out>, _t3=...) at .moc/moc_qsocketnotifier.cpp:178
#23 0x00007faf2e5ac0db in QSocketNotifier::event (this=0x55fdc6b012d0, e=0x7fffe5070770) at kernel/qsocketnotifier.cpp:302
#24 0x00007faf2f661a7f in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x55fdc6b012d0, e=0x7fffe5070770) at kernel/qapplication.cpp:3632
#25 0x00007faf2e571e3a in QCoreApplication::notifyInternal2 (receiver=0x55fdc6b012d0, event=0x7fffe5070770) at kernel/qcoreapplication.cpp:1064
#26 0x00007faf2e5c9f3d in socketNotifierSourceDispatch (source=source@entry=0x55fdc5515730) at kernel/qeventdispatcher_glib.cpp:107
#27 0x00007faf2c966e22 in g_main_dispatch (context=0x7faf24005010) at ../glib/gmain.c:3381
#28 g_main_context_dispatch (context=0x7faf24005010) at ../glib/gmain.c:4099
#29 0x00007faf2c9671b8 in g_main_context_iterate (context=context@entry=0x7faf24005010, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4175
#30 0x00007faf2c96726f in g_main_context_iteration (context=0x7faf24005010, may_block=1) at ../glib/gmain.c:4240
#31 0x00007faf2e5c9384 in QEventDispatcherGlib::processEvents (this=0x55fdc5521e90, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#32 0x00007faf2e57083b in QEventLoop::exec (this=this@entry=0x7fffe5070980, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#33 0x00007faf2e578b10 in QCoreApplication::exec () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#34 0x00007faf2ef0325c in QGuiApplication::exec () at kernel/qguiapplication.cpp:1867
#35 0x00007faf2f6619f5 in QApplication::exec () at kernel/qapplication.cpp:2824
#36 0x000055fdc539e117 in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/plasma5-systemmonitor-5.24.80git.20220301T134646~b94e425-ku.11.1.x86_64/src/main.cpp:159
[Inferior 1 (process 31488) detached]
Comment 1 Bug Janitor Service 2022-03-06 11:26:57 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/libksysguard/-/merge_requests/222
Comment 2 Kai Uwe Broulik 2022-03-06 19:43:21 UTC
Git commit ae73bd15d1b8327797e6e2c27cc7ad415f4d802e by Kai Uwe Broulik.
Committed on 06/03/2022 at 11:26.
Pushed by broulik into branch 'master'.

[Extended Processes] Pass parent to created plugin

The plugin relies on its parent to be `KSysGuard::Processes`.

Regression from d4d8a5a28d22d4d2958052738c2f4110955b47af

M  +1    -1    processcore/extended_process_list.cpp

https://invent.kde.org/plasma/libksysguard/commit/ae73bd15d1b8327797e6e2c27cc7ad415f4d802e
Comment 3 Christoph Feck 2022-03-09 23:08:40 UTC
*** Bug 451339 has been marked as a duplicate of this bug. ***
Comment 4 Patrick Silva 2022-03-10 11:52:44 UTC
*** Bug 451129 has been marked as a duplicate of this bug. ***