Bug 467954 - kwin_wayland crashes
Summary: kwin_wayland crashes
Status: RESOLVED FIXED
Alias: None
Product: kwin
Classification: Plasma
Component: general (show other bugs)
Version: master
Platform: Other Linux
: NOR crash
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-03-30 00:40 UTC by Nicolas Fella
Modified: 2023-03-30 18:42 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Nicolas Fella 2023-03-30 00:40:58 UTC
#0  0x00007fc38356fc97 in std::__uniq_ptr_impl<KWaylandServer::SurfaceInterfacePrivate, std::default_delete<KWaylandServer::SurfaceInterfacePrivate> >::_M_ptr() const (this=0x10) at /usr/include/c++/12/bits/unique_ptr.h:191
#1  std::unique_ptr<KWaylandServer::SurfaceInterfacePrivate, std::default_delete<KWaylandServer::SurfaceInterfacePrivate> >::get() const (this=0x10) at /usr/include/c++/12/bits/unique_ptr.h:462
#2  std::unique_ptr<KWaylandServer::SurfaceInterfacePrivate, std::default_delete<KWaylandServer::SurfaceInterfacePrivate> >::operator->() const (this=0x10) at /usr/include/c++/12/bits/unique_ptr.h:455
#3  KWaylandServer::SurfaceInterface::setOutputs(QList<KWaylandServer::OutputInterface*> const&) (this=0x0, outputs=...) at /home/nico/kde6/src/kwin/src/wayland/surface_interface.cpp:905
#4  0x00007fc3834197c8 in KWin::WaylandWindow::updateClientOutputs() (this=0x251c4f0) at /home/nico/kde6/src/kwin/src/waylandwindow.cpp:159
#5  0x00007fc37fd9df7a in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7ffc17e462d0, r=0x251c4f0, this=<optimized out>) at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:363
#6  doActivate<false>(QObject*, int, void**) (sender=0x1278a10, signal_index=21, argv=0x7ffc17e462d0) at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:3977
#7  0x00007fc37fd9667f in QMetaObject::activate(QObject*, QMetaObject const*, int, void**)
    (sender=sender@entry=0x1278a10, m=m@entry=0x7fc383731fc0 <KWin::Workspace::staticMetaObject>, local_signal_index=local_signal_index@entry=18, argv=argv@entry=0x0)
    at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:4037
#8  0x00007fc383259a53 in KWin::Workspace::outputsChanged() (this=this@entry=0x1278a10) at /home/nico/kde6/build/kwin/src/kwin_autogen/EWIEGA46WW/moc_workspace.cpp:1319
#9  0x00007fc38344be50 in KWin::Workspace::updateOutputs(QList<KWin::Output*> const&) (this=this@entry=0x1278a10, outputOrder=...) at /home/nico/kde6/src/kwin/src/workspace.cpp:1381
#10 0x00007fc38344caa6 in KWin::Workspace::slotOutputBackendOutputsQueried() (this=0x1278a10) at /home/nico/kde6/src/kwin/src/workspace.cpp:1270
#11 0x00007fc37fd9df7a in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7ffc17e464d0, r=0x1278a10, this=<optimized out>) at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:363
#12 doActivate<false>(QObject*, int, void**) (sender=0x7fc36800d210, signal_index=3, argv=0x7ffc17e464d0) at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:3977
#13 0x00007fc37fd9667f in QMetaObject::activate(QObject*, QMetaObject const*, int, void**)
    (sender=sender@entry=0x7fc36800d210, m=m@entry=0x7fc383736300 <KWin::OutputBackend::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x0)
    at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:4037
#14 0x00007fc3832512e0 in KWin::OutputBackend::outputsQueried() (this=this@entry=0x7fc36800d210) at /home/nico/kde6/build/kwin/src/kwin_autogen/TAC5DWH4SE/moc_outputbackend.cpp:214
#15 0x00007fc38349e48a in KWin::DrmBackend::updateOutputs() (this=0x7fc36800d210) at /home/nico/kde6/src/kwin/src/backends/drm/drm_backend.cpp:329
#16 0x00007fc37fd8f34c in QObject::event(QEvent*) (this=0x7fc36800d210, e=0x24968e0) at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:1390
#17 0x00007fc380f92a71 in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x7fc36800d210, e=0x24968e0) at /home/nico/workspace/qt6/qtbase/src/widgets/kernel/qapplication.cpp:3284
#18 0x00007fc37fd426a8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x7fc36800d210, event=0x24968e0) at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1115
#19 0x00007fc37fd42829 in QCoreApplication::sendEvent(QObject*, QEvent*) (receiver=<optimized out>, event=<optimized out>) at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1533
#20 0x00007fc37fd45600 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=data@entry=0xf4c100)
    at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1895
#21 0x00007fc37feccd01 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0xf538f0, flags=...) at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qeventdispatcher_unix.cpp:432
#22 0x00007fc3808933cd in QUnixEventDispatcherQPA::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=<optimized out>, flags=...) at /home/nico/workspace/qt6/qtbase/src/gui/platform/unix/qunixeventdispatcher.cpp:27
#23 0x00007fc37fd4d9f3 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffc17e468d0, flags=..., flags@entry=...) at /home/nico/workspace/qt6/qtbase/src/corelib/global/qflags.h:34
#24 0x00007fc37fd4a1e4 in QCoreApplication::exec() () at /home/nico/workspace/qt6/qtbase/src/corelib/global/qflags.h:74
#25 0x00007fc3803aee4c in QGuiApplication::exec() () at /home/nico/workspace/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1888
#26 0x00007fc380f929e5 in QApplication::exec() () at /home/nico/workspace/qt6/qtbase/src/widgets/kernel/qapplication.cpp:2564
#27 0x000000000043aff8 in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /home/nico/kde6/src/kwin/src/main_wayland.cpp:610

kwin fec40b71631ed0e5104b92d53340764198d37c35
Comment 1 Bug Janitor Service 2023-03-30 15:50:27 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/3915
Comment 2 Vlad Zahorodnii 2023-03-30 18:42:22 UTC
Git commit 2c12a6a4172fe2b59aff4373dd699149bce82ff3 by Vlad Zahorodnii.
Committed on 30/03/2023 at 18:29.
Pushed by vladz into branch 'master'.

wayland: Avoid updating outputs of a closed window

M  +3    -0    src/waylandwindow.cpp

https://invent.kde.org/plasma/kwin/commit/2c12a6a4172fe2b59aff4373dd699149bce82ff3