Summary: | xdg-desktop-portal crashes after update to Plasma 6.1 when screen casting | ||
---|---|---|---|
Product: | [KDE Neon] neon | Reporter: | Malte S. Stretz <mss> |
Component: | Packages User Edition | Assignee: | Neon Bugs <neon-bugs> |
Status: | RESOLVED UPSTREAM | ||
Severity: | crash | CC: | jr, neon-bugs |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Neon | ||
OS: | Linux | ||
See Also: | https://bugs.kde.org/show_bug.cgi?id=488749 | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: | /var/log/apt/history.log |
Description
Malte S. Stretz
2024-06-21 20:44:43 UTC
The DrKonqi crash viewer does not pull the debug symbols, here is the same stack trace from gdb: Thread 8 (Thread 0x7768c49ff640 (LWP 22508)): #0 0x00007768c5318bcf in __GI___poll (fds=0x59cd11c23f80, nfds=2, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29 #1 0x00007768c5a9a256 in g_main_context_poll (priority=<optimized out>, n_fds=2, fds=0x59cd11c23f80, timeout=<optimized out>, context=0x59cd11c25590) at ../../../glib/gmain.c:4518 #2 g_main_context_iterate.constprop.0 (context=context@entry=0x59cd11c25590, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../../../glib/gmain.c:4208 #3 0x00007768c5a423e3 in g_main_context_iteration (context=0x59cd11c25590, may_block=may_block@entry=1) at ../../../glib/gmain.c:4278 #4 0x00007768c5a42431 in glib_worker_main (data=<optimized out>) at ../../../glib/gmain.c:6180 #5 0x00007768c5a73ab1 in g_thread_proxy (data=0x59cd11bf4360) at ../../../glib/gthread.c:827 #6 0x00007768c5294ac3 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442 #7 0x00007768c5326850 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81 Thread 7 (Thread 0x7768bd3fd640 (LWP 22517)): #0 0x00007768c52e57f8 in __GI___clock_nanosleep (clock_id=clock_id@entry=0, flags=flags@entry=0, req=req@entry=0x7768bd3fccb0, rem=rem@entry=0x7768bd3fccb0) at ../sysdeps/unix/sysv/linux/clock_nanosleep.c:78 #1 0x00007768c52ea677 in __GI___nanosleep (req=req@entry=0x7768bd3fccb0, rem=rem@entry=0x7768bd3fccb0) at ../sysdeps/unix/sysv/linux/nanosleep.c:25 #2 0x00007768c52ea5ae in __sleep (seconds=0, seconds@entry=5) at ../sysdeps/posix/sleep.c:55 #3 0x000059cd106886f3 in background_monitor (data=<optimized out>) at ../src/background.c:654 #4 0x00007768c5a73ab1 in g_thread_proxy (data=0x59cd11ce4980) at ../../../glib/gthread.c:827 #5 0x00007768c5294ac3 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442 #6 0x00007768c5326850 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81 Thread 6 (Thread 0x7768bf7fe640 (LWP 26844)): #0 0x00007768c5325e2e in epoll_wait (epfd=26, events=0x7768bf7fd880, maxevents=32, timeout=-1) at ../sysdeps/unix/sysv/linux/epoll_wait.c:30 #1 0x00007768c4e18918 in () at /usr/lib/x86_64-linux-gnu/spa-0.2/support/libspa-support.so #2 0x00007768c4e0bd7c in () at /usr/lib/x86_64-linux-gnu/spa-0.2/support/libspa-support.so #3 0x00007768c56ee226 in () at /lib/x86_64-linux-gnu/libpipewire-0.3.so.0 #4 0x00007768c5294ac3 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442 #5 0x00007768c5326850 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81 Thread 5 (Thread 0x7768bffff640 (LWP 22509)): #0 0x00007768c5318bcf in __GI___poll (fds=0x59cd11c92b70, nfds=4, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29 #1 0x00007768c5a9a256 in g_main_context_poll (priority=<optimized out>, n_fds=4, fds=0x59cd11c92b70, timeout=<optimized out>, context=0x59cd11c30150) at ../../../glib/gmain.c:4518 #2 g_main_context_iterate.constprop.0 (context=0x59cd11c30150, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../../../glib/gmain.c:4208 #3 0x00007768c5a442b3 in g_main_loop_run (loop=0x59cd11c30240) at ../../../glib/gmain.c:4413 #4 0x00007768c592a81a in gdbus_shared_thread_func (user_data=0x59cd11c22520) at ../../../gio/gdbusprivate.c:282 #5 0x00007768c5a73ab1 in g_thread_proxy (data=0x59cd11c185e0) at ../../../glib/gthread.c:827 #6 0x00007768c5294ac3 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442 #7 0x00007768c5326850 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81 Thread 4 (Thread 0x7768c4e61cc0 (LWP 22502)): #0 0x00007768c5318bcf in __GI___poll (fds=0x59cd11c4cbf0, nfds=3, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29 #1 0x00007768c5a9a256 in g_main_context_poll (priority=<optimized out>, n_fds=3, fds=0x59cd11c4cbf0, timeout=<optimized out>, context=0x59cd11c1dfb0) at ../../../glib/gmain.c:4518 #2 g_main_context_iterate.constprop.0 (context=0x59cd11c1dfb0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../../../glib/gmain.c:4208 #3 0x00007768c5a442b3 in g_main_loop_run (loop=0x59cd11c10770) at ../../../glib/gmain.c:4413 #4 0x000059cd10656a25 in main (argc=<optimized out>, argv=<optimized out>) at ../src/xdg-desktop-portal.c:496 Thread 3 (Thread 0x7768bdbfe640 (LWP 22516)): #0 0x00007768c5325e2e in epoll_wait (epfd=15, events=0x7768bdbfd880, maxevents=32, timeout=-1) at ../sysdeps/unix/sysv/linux/epoll_wait.c:30 #1 0x00007768c4e18918 in () at /usr/lib/x86_64-linux-gnu/spa-0.2/support/libspa-support.so #2 0x00007768c4e0bd7c in () at /usr/lib/x86_64-linux-gnu/spa-0.2/support/libspa-support.so #3 0x00007768c56ee226 in () at /lib/x86_64-linux-gnu/libpipewire-0.3.so.0 #4 0x00007768c5294ac3 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442 #5 0x00007768c5326850 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81 Thread 2 (Thread 0x7768be3ff640 (LWP 22514)): #0 0x00007768c5318bcf in __GI___poll (fds=0x59cd11c6dd60, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29 #1 0x00007768c5a9a256 in g_main_context_poll (priority=<optimized out>, n_fds=1, fds=0x59cd11c6dd60, timeout=<optimized out>, context=0x59cd11c6ddf0) at ../../../glib/gmain.c:4518 #2 g_main_context_iterate.constprop.0 (context=context@entry=0x59cd11c6ddf0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../../../glib/gmain.c:4208 #3 0x00007768c5a423e3 in g_main_context_iteration (context=context@entry=0x59cd11c6ddf0, may_block=may_block@entry=1) at ../../../glib/gmain.c:4278 #4 0x00007768c4e3133d in dconf_gdbus_worker_thread (user_data=0x59cd11c6ddf0) at ../gdbus/dconf-gdbus-thread.c:82 #5 0x00007768c5a73ab1 in g_thread_proxy (data=0x59cd11c6e000) at ../../../glib/gthread.c:827 #6 0x00007768c5294ac3 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442 #7 0x00007768c5326850 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81 Thread 1 (Thread 0x7768a5ffb640 (LWP 26810)): #0 0x00007768c41c6c15 in () at /usr/lib/x86_64-linux-gnu/pipewire-0.3/libpipewire-module-protocol-native.so #1 0x00007768c41cd92b in () at /usr/lib/x86_64-linux-gnu/pipewire-0.3/libpipewire-module-protocol-native.so #2 0x00007768c5723d42 in pw_proxy_destroy () at /lib/x86_64-linux-gnu/libpipewire-0.3.so.0 #3 0x000059cd106a343d in pipewire_remote_destroy (remote=0x7768b0011f60) at ../src/pipewire.c:225 #4 0x000059cd106a8e8a in handle_open_pipewire_remote (object=<optimized out>, invocation=0x7768b8015b20 [GDBusMethodInvocation], in_fd_list=<optimized out>, arg_session_handle=<optimized out>, arg_options=<optimized out>) at ../src/screen-cast.c:1005 #5 0x00007768c5433e2e in ffi_call_unix64 () at ../src/x86/unix64.S:105 #6 0x00007768c5430493 in ffi_call_int (cif=<optimized out>, fn=<optimized out>, rvalue=<optimized out>, avalue=<optimized out>, closure=<optimized out>) at ../src/x86/ffi64.c:672 #9 0x00007768c57e5624 in <emit signal ??? on instance 0x59cd11ce3230 [ScreenCast]> (node=<optimized out>, detail=0, instance=0x59cd11ce3230, emission_return=0x7768a5ffab40, instance_and_params=0x7768b000a030) at ../../../gobject/gsignal.c:3816 #7 0x00007768c57d016d in g_cclosure_marshal_generic (closure=<optimized out>, return_gvalue=<optimized out>, n_param_values=<optimized out>, param_values=<optimized out>, invocation_hint=<optimized out>, marshal_data=<optimized out>) at ../../../gobject/gclosure.c:1534 #8 0x00007768c57c9d2f in g_closure_invoke (closure=0x59cd11cfc450, return_value=0x7768a5ffaab0, n_param_values=5, param_values=0x7768b000a030, invocation_hint=0x7768a5ffaa90) at ../../../gobject/gclosure.c:830 #10 0x000059cd10672d54 in _xdp_dbus_screen_cast_skeleton_handle_method_call (connection=<optimized out>, sender=sender@entry=0x7768b8012310 ":1.165", object_path=object_path@entry=0x59cd11d0c4a0 "/org/freedesktop/portal/desktop", interface_name=interface_name@entry=0x7768b801b190 "org.freedesktop.portal.ScreenCast", method_name=method_name@entry=0x7768b800ad10 "OpenPipeWireRemote", parameters=parameters@entry=0x7768b0008580, invocation=0x7768b8015b20 [GDBusMethodInvocation], user_data=0x59cd11ce3230) at src/xdp-dbus.c:49660 #11 0x00007768c593a15e in dispatch_in_thread_func (task=<optimized out>, source_object=<optimized out>, task_data=0x7768ac01a100, cancellable=<optimized out>) at ../../../gio/gdbusinterfaceskeleton.c:540 #12 0x00007768c58c7194 in g_task_thread_pool_thread (thread_data=0x59cd11c1c180, pool_data=<optimized out>) at ../../../gio/gtask.c:1452 #13 0x00007768c5a76714 in g_thread_pool_thread_proxy (data=<optimized out>) at ../../../glib/gthreadpool.c:350 #14 0x00007768c5a73ab1 in g_thread_proxy (data=0x7768b00048c0) at ../../../glib/gthread.c:827 #15 0x00007768c5294ac3 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442 #16 0x00007768c5326850 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81 I found a simpler way to trigger the crash which does not involve flatpak: Go to https://www.webrtc-experiment.com/Pluginfree-Screen-Sharing/ in Firefox (from the PPA) and try that. Accord to Nate Graham on the Neon Development channel does current Plamsa not work with the old 0.3 pipewire, at least not the jammy version (https://matrix.to/#/!tTRWOsgaQxxZMiAvdi:kde.org/$2w6AojIYScf4KaoIdoPNEAZCM7jDk851LuEQKXIvQOw). I did quick backport of the kinetic version 0.3.58 (instead of jammy's 0.3.48) and that makes KPipeWire crash instead (I saw crashes within xdg-desktop-portal-kde and plasmashell within minutes after the switch). The Ubuntu pipewire changelog is quite interesting: pipewire (0.3.48-1ubuntu3) jammy; urgency=medium * Revert the previous change to resolve a regression with screencasting. Extra fixes are available upstream but figuring out the details will take longer (https://bugs.launchpad.net/ubuntu/+source/pipewire/+bug/1994928) -- Sebastien Bacher <seb128@ubuntu.com> Wed, 09 Nov 2022 12:12:45 +0100 pipewire (0.3.48-1ubuntu2) jammy; urgency=medium * d/p/0001-buffers-ensure-buffer-size-does-not-exceed-maxsize.patch d/p/0002-gst-dequeue-a-shared-buffer-instead-of-original-pool.patch - Camera output freeze when using pipewiresrc (https://bugs.launchpad.net/ubuntu/+source/pipewire/+bug/1985057) -- Kai-Chuan Hsieh <kaichuan.hsieh@canonical.com> Mon, 15 Aug 2022 13:52:20 +0800 The crash is caused by the ancient Pipewire version in Ubuntu 22.04. This will be fixed once Neon is rebased on 24.04. As a workaround one can install the packages from the PPA at https://pipewire-debian.github.io/pipewire-debian/ The install will fail due to a dependency issue unless one removes the pipewire-pulse package first (it is reinstalled automatically). It is probably a good idea to downgrade pipewire before the upgrade to 24.04 is applied (eg. via ppa-purge). |