Bug 484861

Summary: Crash when starting plasma mobile
Product: [Plasma] kwin Reporter: Justin Zobel <justin>
Component: generalAssignee: KWin default assignee <kwin-bugs-null>
Status: RESOLVED FIXED    
Severity: crash    
Priority: NOR    
Version First Reported In: 6.0.3   
Target Milestone: ---   
Platform: postmarketOS   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Justin Zobel 2024-04-01 10:39:43 UTC
This is a new install testing the systemd init system on postmarketOS. I get this crash when attempting to start the system.

#0  0x0000ffffa930cc4c in QArrayDataPointer<KWin::Output*>::QArrayDataPointer (other=..., this=<synthetic pointer>) at /usr/include/qt6/QtCore/qarraydatapointer.h:38
#1  QList<KWin::Output*>::QList (this=<synthetic pointer>) at /usr/include/qt6/QtCore/qlist.h:70
#2  KWin::Workspace::outputs (this=0x0) at /home/buildozer/aports/community/kwin/src/kwin-6.0.3.1/src/workspace.h:782
#3  KWin::DpmsInputEventFilter::notify (this=<optimized out>) at /home/buildozer/aports/community/kwin/src/kwin-6.0.3.1/src/dpmsinputeventfilter.cpp:111
#4  0x0000ffffa930cddc in KWin::DpmsInputEventFilter::~DpmsInputEventFilter (this=0xffff8a48cbd0, __in_chrg=<optimized out>)
    at /home/buildozer/aports/community/kwin/src/kwin-6.0.3.1/src/dpmsinputeventfilter.cpp:37
#5  0x0000ffffa930ce54 in KWin::DpmsInputEventFilter::~DpmsInputEventFilter (this=0xffff8a48cbd0, __in_chrg=<optimized out>)
    at /home/buildozer/aports/community/kwin/src/kwin-6.0.3.1/src/dpmsinputeventfilter.cpp:38
#6  0x0000ffffa94f7900 in std::default_delete<KWin::DpmsInputEventFilter>::operator() (__ptr=<optimized out>, this=<optimized out>) at /usr/include/c++/13.2.1/bits/unique_ptr.h:93
#7  std::unique_ptr<KWin::DpmsInputEventFilter, std::default_delete<KWin::DpmsInputEventFilter> >::~unique_ptr (this=0xffff97ce3a30, __in_chrg=<optimized out>)
    at /usr/include/c++/13.2.1/bits/unique_ptr.h:404
#8  KWin::Workspace::~Workspace (this=0xffff97ce3710, __in_chrg=<optimized out>) at /home/buildozer/aports/community/kwin/src/kwin-6.0.3.1/src/workspace.cpp:475
#9  0x0000ffffa94f8154 in KWin::Workspace::~Workspace (this=0xffff97ce3710, __in_chrg=<optimized out>) at /home/buildozer/aports/community/kwin/src/kwin-6.0.3.1/src/workspace.cpp:475
#10 0x0000aaaae80397e4 in KWin::ApplicationWayland::~ApplicationWayland (this=0xffffd7894ed0, __in_chrg=<optimized out>)
    at /home/buildozer/aports/community/kwin/src/kwin-6.0.3.1/src/main_wayland.cpp:126
#11 0x0000aaaae8004d94 in main (argc=<optimized out>, argv=<optimized out>) at /home/buildozer/aports/community/kwin/src/kwin-6.0.3.1/src/main_wayland.cpp:610
Comment 1 Bug Janitor Service 2024-04-15 16:08:35 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/5616
Comment 2 David Edmundson 2024-04-15 22:03:55 UTC
Git commit 3ed535dd6729263fbeac3d77607126b22500ab05 by David Edmundson.
Committed on 15/04/2024 at 22:03.
Pushed by davidedmundson into branch 'master'.

Remove superfluous wake in dpmsinputeventfilter destruction

Workspace already makes sure to only dynamically delete the
dpmsinputeventfilter if all screens are currently on. This line to wake
all screens is therefore redundant.

It's problematic as it can cause a crash on final teardown when
workspace is destroyed.

M  +0    -1    src/dpmsinputeventfilter.cpp

https://invent.kde.org/plasma/kwin/-/commit/3ed535dd6729263fbeac3d77607126b22500ab05
Comment 3 Vlad Zahorodnii 2024-04-16 08:01:36 UTC
Git commit fe5089925a698230d8ea41303879c5605b7de9a9 by Vlad Zahorodnii, on behalf of David Edmundson.
Committed on 16/04/2024 at 07:03.
Pushed by vladz into branch 'Plasma/6.0'.

Remove superfluous wake in dpmsinputeventfilter destruction

Workspace already makes sure to only dynamically delete the
dpmsinputeventfilter if all screens are currently on. This line to wake
all screens is therefore redundant.

It's problematic as it can cause a crash on final teardown when
workspace is destroyed.


(cherry picked from commit 3ed535dd6729263fbeac3d77607126b22500ab05)

14cd96a8 backends: Remove superfluous wake in dpmsinputeventfilter destruction

M  +0    -1    src/dpmsinputeventfilter.cpp

https://invent.kde.org/plasma/kwin/-/commit/fe5089925a698230d8ea41303879c5605b7de9a9