Bug 446454 - kwin_wayland crashes on simpledrm with an egl client
Summary: kwin_wayland crashes on simpledrm with an egl client
Status: RESOLVED DUPLICATE of bug 446502
Alias: None
Product: kwin
Classification: Plasma
Component: compositing (show other bugs)
Version: git master
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-12-04 03:24 UTC by bluescreenavenger
Modified: 2021-12-06 01:18 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 bluescreenavenger 2021-12-04 03:24:43 UTC
Hi

I actually think this is probably something to do with commit 737074d368bcf5aa3a388908f1776261d46dbb8b in kwayland-server


If I start kwin (drm) with
kwin_wayland weston-simple-shm
(it's on simpledrm)
kwin does not crash


If I start it with
kwin_wayland weston-simple-egl
kwin crashes

This is on simpledrm, but I think QXL too.
If I export LIBGL_ALWAYS_SOFTWARE=1, this is a workaround


Below is the relevant stack trace I get:

#0  0x00007f0021b93cf6 in QScopedPointer<KWaylandServer::LinuxDmaBufV1FormatTable, QScopedPointerDeleter<KWaylandServer::LinuxDmaBufV1FormatTable> >::operator-> (this=<optimized out>)
    at /opt/include/QtCore/qscopedpointer.h:118
No locals.
#1  KWaylandServer::LinuxDmaBufV1FeedbackPrivate::send (this=0x560e73256f00, 
    resource=0x560e73a641c0)
    at /srcbuild/kf5-kwayland-server/src/server/linuxdmabufv1clientbuffer.cpp:475
        bytes = {d = 0x9}
        sendTranche = <optimized out>
#2  0x00007f0021bf1e4a in QtWaylandServer::zwp_linux_dmabuf_feedback_v1::bind (
    this=0x560e73256f00, handle=0x560e73a2b760)
    at /srcbuild/kf5-kwayland-server/build/src/server/qwayland-server-linux-dmabuf-unstable-v1.cpp:847
        resource = 0x560e73a641c0
#3  0x00007f0021bf29aa in QtWaylandServer::zwp_linux_dmabuf_feedback_v1::add (this=0x560e73256f00, 
    client=<optimized out>, id=<optimized out>, version=<optimized out>)
    at /srcbuild/kf5-kwayland-server/build/src/server/qwayland-server-linux-dmabuf-unstable-v1.cpp:754
        resource = 0x7fff7ffa8bb0
#4  0x00007f001da86d1d in ?? () from /lib/x86_64-linux-gnu/libffi.so.7
No symbol table info available.
#5  0x00007f001da86289 in ?? () from /lib/x86_64-linux-gnu/libffi.so.7
No symbol table info available.
#6  0x00007f001f0a1678 in wl_closure_invoke ()
   from /opt/lib/x86_64-linux-gnu/libwayland-server.so.0
No symbol table info available.
#7  0x00007f001f09f00e in wl_client_connection_data ()
   from /opt/lib/x86_64-linux-gnu/libwayland-server.so.0
No symbol table info available.
#8  0x00007f001f0a0770 in wl_event_loop_dispatch ()
   from /opt/lib/x86_64-linux-gnu/libwayland-server.so.0
No symbol table info available.
#9  0x00007f0021b87e96 in KWaylandServer::Display::dispatchEvents (this=<optimized out>)
    at /srcbuild/kf5-kwayland-server/src/server/display.cpp:114
        __PRETTY_FUNCTION__ = {<optimized out> <repeats 47 times>}
#10 0x00007f00203b5f86 in ?? () from /opt/lib/x86_64-linux-gnu/libQt5Core.so.5
No symbol table info available.
#11 0x00007f00203b7d4a in QSocketNotifier::activated(QSocketDescriptor, QSocketNotifier::Type, QSocketNotifier::QPrivateSignal) () from /opt/lib/x86_64-linux-gnu/libQt5Core.so.5
No symbol table info available.
#12 0x00007f00203b81f1 in QSocketNotifier::event(QEvent*) () from /opt/lib/x86_64-linux-gnu/libQt5Core.so.5
No symbol table info available.
#13 0x00007f0020c0c0c5 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /opt/lib/x86_64-linux-gnu/libQt5Widgets.so.5
No symbol table info available.
#14 0x00007f0020398b04 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /opt/lib/x86_64-linux-gnu/libQt5Core.so.5
No symbol table info available.
#15 0x00007f00203c7a88 in QEventDispatcherUNIXPrivate::activateSocketNotifiers() () from /opt/lib/x86_64-linux-gnu/libQt5Core.so.5
No symbol table info available.
#16 0x00007f00203c7d0e in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /opt/lib/x86_64-linux-gnu/libQt5Core.so.5
No symbol table info available.
#17 0x0000560e711c6878 in QUnixEventDispatcherQPA::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
No symbol table info available.
#18 0x00007f002039669c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /opt/lib/x86_64-linux-gnu/libQt5Core.so.5
No symbol table info available.
#19 0x00007f002039a87d in QCoreApplication::exec() () from /opt/lib/x86_64-linux-gnu/libQt5Core.so.5
No symbol table info available.
#20 0x0000560e710c3ece in main ()
No symbol table info available.
Comment 1 bluescreenavenger 2021-12-06 01:18:33 UTC
Looks like someone reported this in 446502 later, and it got fixed

*** This bug has been marked as a duplicate of bug 446502 ***