BuddiesOfBudgie / magpie

Magpie is a softish fork of Mutter for use with Budgie Desktop.
GNU General Public License v2.0
18 stars 4 forks source link

[Bug] Segfault on running dev panel manager branch on Magpie #23

Closed JoshStrobl closed 2 months ago

JoshStrobl commented 3 months ago

Description

When running budgie-desktop branch 473-implement-wayland-support-in-panel-manager, with @Conan-Kudo's budgie-wayland-session file for magpie, upon login through SDDM it will black screen and kick me back to SDDM.

I am not 100% convinced that the budgie-wm code to effectively no-op and clean exit on detecting Wayland works under magpie v1 (under kwin, libxfce4windowing does detect the windowing system as Wayland), so may be worth taking a look at too, but would be good to start getting everything else to run.

Ties into #13 with missing Wayland protocol support too.

magpie-wlr provided via Neal's copr against f0fcf8e

Magpie version

1.0~git20240413.f0fcf8e-1

Operating System

Fedora 40

Steps to reproduce the issue

  1. Build 473-implement-wayland-support-in-panel-manager branch of budgie-desktop
  2. Build make-failwhale-noop branch of budgie-session
  3. Install budgie-wayland-session bits, just do not install sddm files until layer-shell support is in magpie or SDDM will not work.
  4. Install sddm, kwin. I'd recommend also kscreen + plasma-systemsettings (or respective package name) for monitor configuration
  5. Launch Budgie Desktop via the magpie session. Notice it no worky.

Actual result

Jun 02 14:10:54 minion org.buddiesofbudgie.BudgieWm.desktop[2060]: Window manager warning: Display “:0” already has a window manager; try using the --replace option to replace the current window manager.
Jun 02 14:10:54 minion kernel: show_signal_msg: 65 callbacks suppressed
Jun 02 14:10:54 minion kernel: magpie-wm[1667]: segfault at 0 ip 000055d9554b79f9 sp 00007ff8699ff4b0 error 4 in magpie-wm[55d9554a5000+21000] likely on CPU 4 (core 4, socket 0)
Jun 02 14:10:54 minion kernel: Code: 44 24 08 49 8d 4c 24 08 85 c0 0f 84 a9 00 00 00 8d 70 01 f0 0f b1 31 75 ef 8b 01 85 c0 0f 84 9e 00 00 00 48 8b ba b0 01 00 00 <48> 8b 07 ff 50 18 49 89 c5 48 8b 83 a8 02 00 00 4c 8b 70 50 4d 85
Jun 02 14:10:54 minion budgie-wm[2060]: main.vala:45: Error running WM: Failed to acquire window manager ownership
Jun 02 14:10:54 minion systemd[1]: Created slice system-systemd\x2dcoredump.slice - Slice /system/systemd-coredump.
Jun 02 14:10:54 minion audit: BPF prog-id=63 op=LOAD
Jun 02 14:10:54 minion audit: BPF prog-id=64 op=LOAD
Jun 02 14:10:54 minion audit: BPF prog-id=65 op=LOAD
Jun 02 14:10:54 minion systemd[1]: Started systemd-coredump@0-2135-0.service - Process Core Dump (PID 2135/UID 0).
Jun 02 14:10:54 minion audit[1]: SERVICE_START pid=1 uid=0 auid=4294967295 ses=4294967295 subj=kernel msg='unit=systemd-coredump@0-2135-0 comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
Jun 02 14:10:54 minion systemd-coredump[2139]: [🡕] Process 1581 (magpie-wm) of user 1000 dumped core.

                                               Module libpciaccess.so.0 from rpm libpciaccess-0.16-12.fc40.x86_64
                                               Module libtinfo.so.6 from rpm ncurses-6.4-12.20240127.fc40.x86_64
                                               Module libedit.so.0 from rpm libedit-3.1-51.20240517cvs.fc40.x86_64
                                               Module libdrm_intel.so.1 from rpm libdrm-2.4.120-3.fc40.x86_64
                                               Module libdrm_nouveau.so.2 from rpm libdrm-2.4.120-3.fc40.x86_64
                                               Module libdrm_amdgpu.so.1 from rpm libdrm-2.4.120-3.fc40.x86_64
                                               Module libelf.so.1 from rpm elfutils-0.191-4.fc40.x86_64
                                               Module libdrm_radeon.so.1 from rpm libdrm-2.4.120-3.fc40.x86_64
                                               Module libsensors.so.4 from rpm lm_sensors-3.6.0-18.fc40.x86_64
                                               Module libz.so.1 from rpm zlib-ng-2.1.6-2.fc40.x86_64
                                               Module radeonsi_dri.so from rpm mesa-24.0.8-1.fc40.x86_64
                                               Module libxshmfence.so.1 from rpm libxshmfence-1.3.2-3.fc40.x86_64
                                               Module libxcb-sync.so.1 from rpm libxcb-1.17.0-1.fc40.x86_64
                                               Module libxcb-dri2.so.0 from rpm libxcb-1.17.0-1.fc40.x86_64
                                               Module libX11-xcb.so.1 from rpm libX11-1.8.9-1.fc40.x86_64
                                               Module libglapi.so.0 from rpm mesa-24.0.8-1.fc40.x86_64
                                               Module libEGL_mesa.so.0 from rpm mesa-24.0.8-1.fc40.x86_64
                                               Module libpcre2-8.so.0 from rpm pcre2-10.42-2.fc40.2.x86_64
                                               Module libglib-2.0.so.0 from rpm glib2-2.80.2-1.fc40.x86_64
                                               Module libgobject-2.0.so.0 from rpm glib2-2.80.2-1.fc40.x86_64
                                               Module libgudev-1.0.so.0 from rpm libgudev-238-5.fc40.x86_64
                                               Module libzstd.so.1 from rpm zstd-1.5.6-1.fc40.x86_64
                                               Module liblzma.so.5 from rpm xz-5.4.6-3.fc40.x86_64
                                               Module liblz4.so.1 from rpm lz4-1.9.4-6.fc40.x86_64
                                               Module libwacom.so.9 from rpm libwacom-2.11.0-1.fc40.x86_64
                                               Module libevdev.so.2 from rpm libevdev-1.13.1-4.fc40.x86_64
                                               Module libmtdev.so.1 from rpm mtdev-1.1.6-8.fc40.x86_64
                                               Module libsystemd.so.0 from rpm systemd-255.7-1.fc40.x86_64
                                               Module libcap.so.2 from rpm libcap-2.69-8.fc40.x86_64
                                               Module libxcb-randr.so.0 from rpm libxcb-1.17.0-1.fc40.x86_64
                                               Module libexpat.so.1 from rpm expat-2.6.2-1.fc40.x86_64
                                               Module libGLdispatch.so.0 from rpm libglvnd-1.7.0-4.fc40.x86_64
                                               Module libXau.so.6 from rpm libXau-1.0.11-6.fc40.x86_64
                                               Module libxcb-errors.so.0 from rpm xcb-util-errors-1.0.1-3.fc40.x86_64
                                               Module libxcb-res.so.0 from rpm libxcb-1.17.0-1.fc40.x86_64
                                               Module libxcb-icccm.so.4 from rpm xcb-util-wm-0.4.2-5.fc40.x86_64
                                               Module libxcb-ewmh.so.2 from rpm xcb-util-wm-0.4.2-5.fc40.x86_64
                                               Module libxcb-composite.so.0 from rpm libxcb-1.17.0-1.fc40.x86_64
                                               Module libwayland-client.so.0 from rpm wayland-1.22.0-3.fc40.x86_64
                                               Module libxcb-xinput.so.0 from rpm libxcb-1.17.0-1.fc40.x86_64
                                               Module libxcb-xfixes.so.0 from rpm libxcb-1.17.0-1.fc40.x86_64
                                               Module libxcb-shm.so.0 from rpm libxcb-1.17.0-1.fc40.x86_64
                                               Module libxcb-render-util.so.0 from rpm xcb-util-renderutil-0.3.10-5.fc40.x86_64
                                               Module libxcb-render.so.0 from rpm libxcb-1.17.0-1.fc40.x86_64
                                               Module libxcb-present.so.0 from rpm libxcb-1.17.0-1.fc40.x86_64
                                               Module libxcb-dri3.so.0 from rpm libxcb-1.17.0-1.fc40.x86_64
                                               Module libinput.so.10 from rpm libinput-1.25.0-4.fc40.x86_64
                                               Module libliftoff.so.0 from rpm libliftoff-0.4.1-4.fc40.x86_64
                                               Module libdisplay-info.so.1 from rpm libdisplay-info-0.1.1-4.fc40.x86_64
                                               Module libseat.so.1 from rpm seatd-0.8.0-2.fc40.x86_64
                                               Module libudev.so.1 from rpm systemd-255.7-1.fc40.x86_64
                                               Module libvulkan.so.1 from rpm vulkan-loader-1.3.283.0-1.fc40.x86_64
                                               Module libGLESv2.so.2 from rpm libglvnd-1.7.0-4.fc40.x86_64
                                               Module libgbm.so.1 from rpm mesa-24.0.8-1.fc40.x86_64
                                               Module libEGL.so.1 from rpm libglvnd-1.7.0-4.fc40.x86_64
                                               Module libpixman-1.so.0 from rpm pixman-0.43.4-1.fc40.x86_64
                                               Module libdrm.so.2 from rpm libdrm-2.4.120-3.fc40.x86_64
                                               Module libffi.so.8 from rpm libffi-3.4.4-7.fc40.x86_64
                                               Module libxkbcommon.so.0 from rpm libxkbcommon-1.6.0-2.fc40.x86_64
                                               Module libxcb.so.1 from rpm libxcb-1.17.0-1.fc40.x86_64
                                               Module libwlroots.so.12 from rpm wlroots-0.17.3-1.fc40.x86_64
                                               Module libwayland-server.so.0 from rpm wayland-1.22.0-3.fc40.x86_64
                                               Module magpie-wm from rpm magpie-wlr-1.0~git20240413.f0fcf8e-1.fc40.x86_64
                                               Stack trace of thread 1667:
                                               #0  0x000055d9554b79f9 _ZL36xwayland_surface_set_geometry_notifyP11wl_listenerPv (magpie-wm + 0x1a9f9)
                                               #1  0x00007ff86a975d3c wl_signal_emit_mutable (libwayland-server.so.0 + 0x7d3c)
                                               #2  0x00007ff86a903845 x11_event_handler (libwlroots.so.12 + 0xa9845)
                                               #3  0x00007ff86a977852 wl_event_loop_dispatch (libwayland-server.so.0 + 0x9852)
                                               #4  0x00007ff86a9780d5 wl_display_run (libwayland-server.so.0 + 0xa0d5)
                                               #5  0x000055d9554b26bf _Z14run_compositorRKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EESt7promiseIPKcE (magpie-wm + 0x156bf)
                                               #6  0x000055d9554c2e8e _ZNSt6thread11_State_implINS_8_InvokerISt5tupleIJPFiRKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS9_EESt7promiseIPKcEESB_SH_EEEEE6_M_runE>
                                               #7  0x00007ff86a4e6524 execute_native_thread_routine (libstdc++.so.6 + 0xe6524)
                                               #8  0x00007ff86a2a91b7 start_thread (libc.so.6 + 0x961b7)
                                               #9  0x00007ff86a32b39c __clone3 (libc.so.6 + 0x11839c)

                                               Stack trace of thread 1581:
                                               #0  0x00007ff86a313e03 wait4 (libc.so.6 + 0x100e03)
                                               #1  0x00007ff86a2674bb do_system (libc.so.6 + 0x544bb)
                                               #2  0x000055d9554ab3ab main (magpie-wm + 0xe3ab)
                                               #3  0x00007ff86a23d088 __libc_start_call_main (libc.so.6 + 0x2a088)
                                               #4  0x00007ff86a23d14b __libc_start_main@@GLIBC_2.34 (libc.so.6 + 0x2a14b)
                                               #5  0x000055d9554abf55 _start (magpie-wm + 0xef55)

                                               Stack trace of thread 1671:
                                               #0  0x00007ff86a2a5919 __futex_abstimed_wait_common (libc.so.6 + 0x92919)
                                               #1  0x00007ff86a2a82e9 pthread_cond_wait@@GLIBC_2.3.2 (libc.so.6 + 0x952e9)
                                               #2  0x00007ff861a9d8ad cnd_wait (radeonsi_dri.so + 0x9d8ad)
                                               #3  0x00007ff861a7b46b util_queue_thread_func (radeonsi_dri.so + 0x7b46b)
                                               #4  0x00007ff861a9d7dc impl_thrd_routine (radeonsi_dri.so + 0x9d7dc)
                                               #5  0x00007ff86a2a91b7 start_thread (libc.so.6 + 0x961b7)
                                               #6  0x00007ff86a32b39c __clone3 (libc.so.6 + 0x11839c)

                                               Stack trace of thread 1672:
                                               #0  0x00007ff86a2a5919 __futex_abstimed_wait_common (libc.so.6 + 0x92919)
                                               #1  0x00007ff86a2a82e9 pthread_cond_wait@@GLIBC_2.3.2 (libc.so.6 + 0x952e9)
                                               #2  0x00007ff861a9d8ad cnd_wait (radeonsi_dri.so + 0x9d8ad)
                                               #3  0x00007ff861a7b46b util_queue_thread_func (radeonsi_dri.so + 0x7b46b)
                                               #4  0x00007ff861a9d7dc impl_thrd_routine (radeonsi_dri.so + 0x9d7dc)
                                               #5  0x00007ff86a2a91b7 start_thread (libc.so.6 + 0x961b7)
                                               #6  0x00007ff86a32b39c __clone3 (libc.so.6 + 0x11839c)

                                               Stack trace of thread 1673:
                                               #0  0x00007ff86a2a5919 __futex_abstimed_wait_common (libc.so.6 + 0x92919)
                                               #1  0x00007ff86a2a82e9 pthread_cond_wait@@GLIBC_2.3.2 (libc.so.6 + 0x952e9)
                                               #2  0x00007ff861a9d8ad cnd_wait (radeonsi_dri.so + 0x9d8ad)
                                               #3  0x00007ff861a7b46b util_queue_thread_func (radeonsi_dri.so + 0x7b46b)
                                               #4  0x00007ff861a9d7dc impl_thrd_routine (radeonsi_dri.so + 0x9d7dc)
                                               #5  0x00007ff86a2a91b7 start_thread (libc.so.6 + 0x961b7)
                                               #6  0x00007ff86a32b39c __clone3 (libc.so.6 + 0x11839c)

                                               Stack trace of thread 1675:
                                               #0  0x00007ff86a2a5919 __futex_abstimed_wait_common (libc.so.6 + 0x92919)
                                               #1  0x00007ff86a2a82e9 pthread_cond_wait@@GLIBC_2.3.2 (libc.so.6 + 0x952e9)
                                               #2  0x00007ff861a9d8ad cnd_wait (radeonsi_dri.so + 0x9d8ad)
                                               #3  0x00007ff861a7b46b util_queue_thread_func (radeonsi_dri.so + 0x7b46b)
                                               #4  0x00007ff861a9d7dc impl_thrd_routine (radeonsi_dri.so + 0x9d7dc)
                                               #5  0x00007ff86a2a91b7 start_thread (libc.so.6 + 0x961b7)
                                               #6  0x00007ff86a32b39c __clone3 (libc.so.6 + 0x11839c)

                                               Stack trace of thread 1676:
                                               #0  0x00007ff86a2a5919 __futex_abstimed_wait_common (libc.so.6 + 0x92919)
                                               #1  0x00007ff86a2a82e9 pthread_cond_wait@@GLIBC_2.3.2 (libc.so.6 + 0x952e9)
                                               #2  0x00007ff861a9d8ad cnd_wait (radeonsi_dri.so + 0x9d8ad)
                                               #3  0x00007ff861a7b46b util_queue_thread_func (radeonsi_dri.so + 0x7b46b)
                                               #4  0x00007ff861a9d7dc impl_thrd_routine (radeonsi_dri.so + 0x9d7dc)
                                               #5  0x00007ff86a2a91b7 start_thread (libc.so.6 + 0x961b7)
                                               #6  0x00007ff86a32b39c __clone3 (libc.so.6 + 0x11839c)

                                               Stack trace of thread 1677:
                                               #0  0x00007ff86a2a5919 __futex_abstimed_wait_common (libc.so.6 + 0x92919)
                                               #1  0x00007ff86a2a82e9 pthread_cond_wait@@GLIBC_2.3.2 (libc.so.6 + 0x952e9)
                                               #2  0x00007ff861a9d8ad cnd_wait (radeonsi_dri.so + 0x9d8ad)
                                               #3  0x00007ff861a7b46b util_queue_thread_func (radeonsi_dri.so + 0x7b46b)
                                               #4  0x00007ff861a9d7dc impl_thrd_routine (radeonsi_dri.so + 0x9d7dc)
                                               #5  0x00007ff86a2a91b7 start_thread (libc.so.6 + 0x961b7)
                                               #6  0x00007ff86a32b39c __clone3 (libc.so.6 + 0x11839c)

                                               Stack trace of thread 1679:
                                               #0  0x00007ff86a2a5919 __futex_abstimed_wait_common (libc.so.6 + 0x92919)
                                               #1  0x00007ff86a2a82e9 pthread_cond_wait@@GLIBC_2.3.2 (libc.so.6 + 0x952e9)
                                               #2  0x00007ff861a9d8ad cnd_wait (radeonsi_dri.so + 0x9d8ad)
                                               #3  0x00007ff861a7b46b util_queue_thread_func (radeonsi_dri.so + 0x7b46b)
                                               #4  0x00007ff861a9d7dc impl_thrd_routine (radeonsi_dri.so + 0x9d7dc)
                                               #5  0x00007ff86a2a91b7 start_thread (libc.so.6 + 0x961b7)
                                               #6  0x00007ff86a32b39c __clone3 (libc.so.6 + 0x11839c)

                                               Stack trace of thread 1678:
                                               #0  0x00007ff86a2a5919 __futex_abstimed_wait_common (libc.so.6 + 0x92919)
                                               #1  0x00007ff86a2a82e9 pthread_cond_wait@@GLIBC_2.3.2 (libc.so.6 + 0x952e9)
                                               #2  0x00007ff861a9d8ad cnd_wait (radeonsi_dri.so + 0x9d8ad)
                                               #3  0x00007ff861a7b46b util_queue_thread_func (radeonsi_dri.so + 0x7b46b)
                                               #4  0x00007ff861a9d7dc impl_thrd_routine (radeonsi_dri.so + 0x9d7dc)
                                               #5  0x00007ff86a2a91b7 start_thread (libc.so.6 + 0x961b7)
                                               #6  0x00007ff86a32b39c __clone3 (libc.so.6 + 0x11839c)

                                               Stack trace of thread 1683:
                                               #0  0x00007ff86a2a5919 __futex_abstimed_wait_common (libc.so.6 + 0x92919)
                                               #1  0x00007ff86a2a82e9 pthread_cond_wait@@GLIBC_2.3.2 (libc.so.6 + 0x952e9)
                                               #2  0x00007ff861a9d8ad cnd_wait (radeonsi_dri.so + 0x9d8ad)
                                               #3  0x00007ff861a7b46b util_queue_thread_func (radeonsi_dri.so + 0x7b46b)
                                               #4  0x00007ff861a9d7dc impl_thrd_routine (radeonsi_dri.so + 0x9d7dc)
                                               #5  0x00007ff86a2a91b7 start_thread (libc.so.6 + 0x961b7)
                                               #6  0x00007ff86a32b39c __clone3 (libc.so.6 + 0x11839c)

                                               Stack trace of thread 1680:
                                               #0  0x00007ff86a2a5919 __futex_abstimed_wait_common (libc.so.6 + 0x92919)
                                               #1  0x00007ff86a2a82e9 pthread_cond_wait@@GLIBC_2.3.2 (libc.so.6 + 0x952e9)
                                               #2  0x00007ff861a9d8ad cnd_wait (radeonsi_dri.so + 0x9d8ad)
                                               #3  0x00007ff861a7b46b util_queue_thread_func (radeonsi_dri.so + 0x7b46b)
                                               #4  0x00007ff861a9d7dc impl_thrd_routine (radeonsi_dri.so + 0x9d7dc)
                                               #5  0x00007ff86a2a91b7 start_thread (libc.so.6 + 0x961b7)
                                               #6  0x00007ff86a32b39c __clone3 (libc.so.6 + 0x11839c)

                                               Stack trace of thread 1674:
                                               #0  0x00007ff86a2a5919 __futex_abstimed_wait_common (libc.so.6 + 0x92919)
                                               #1  0x00007ff86a2a82e9 pthread_cond_wait@@GLIBC_2.3.2 (libc.so.6 + 0x952e9)
                                               #2  0x00007ff861a9d8ad cnd_wait (radeonsi_dri.so + 0x9d8ad)
                                               #3  0x00007ff861a7b46b util_queue_thread_func (radeonsi_dri.so + 0x7b46b)
                                               #4  0x00007ff861a9d7dc impl_thrd_routine (radeonsi_dri.so + 0x9d7dc)
                                               #5  0x00007ff86a2a91b7 start_thread (libc.so.6 + 0x961b7)
                                               #6  0x00007ff86a32b39c __clone3 (libc.so.6 + 0x11839c)

                                               Stack trace of thread 1686:
                                               #0  0x00007ff86a2a5919 __futex_abstimed_wait_common (libc.so.6 + 0x92919)
                                               #1  0x00007ff86a2a82e9 pthread_cond_wait@@GLIBC_2.3.2 (libc.so.6 + 0x952e9)
                                               #2  0x00007ff861a9d8ad cnd_wait (radeonsi_dri.so + 0x9d8ad)
                                               #3  0x00007ff861a7b46b util_queue_thread_func (radeonsi_dri.so + 0x7b46b)
                                               #4  0x00007ff861a9d7dc impl_thrd_routine (radeonsi_dri.so + 0x9d7dc)
                                               #5  0x00007ff86a2a91b7 start_thread (libc.so.6 + 0x961b7)
                                               #6  0x00007ff86a32b39c __clone3 (libc.so.6 + 0x11839c)

                                                                                              Stack trace of thread 1682:
                                               #0  0x00007ff86a2a5919 __futex_abstimed_wait_common (libc.so.6 + 0x92919)
                                               #1  0x00007ff86a2a82e9 pthread_cond_wait@@GLIBC_2.3.2 (libc.so.6 + 0x952e9)
                                               #2  0x00007ff861a9d8ad cnd_wait (radeonsi_dri.so + 0x9d8ad)
                                               #3  0x00007ff861a7b46b util_queue_thread_func (radeonsi_dri.so + 0x7b46b)
                                               #4  0x00007ff861a9d7dc impl_thrd_routine (radeonsi_dri.so + 0x9d7dc)
                                               #5  0x00007ff86a2a91b7 start_thread (libc.so.6 + 0x961b7)
                                               #6  0x00007ff86a32b39c __clone3 (libc.so.6 + 0x11839c)

                                               Stack trace of thread 1685:
                                               #0  0x00007ff86a2a5919 __futex_abstimed_wait_common (libc.so.6 + 0x92919)
                                               #1  0x00007ff86a2a82e9 pthread_cond_wait@@GLIBC_2.3.2 (libc.so.6 + 0x952e9)
                                               #2  0x00007ff861a9d8ad cnd_wait (radeonsi_dri.so + 0x9d8ad)
                                               #3  0x00007ff861a7b46b util_queue_thread_func (radeonsi_dri.so + 0x7b46b)
                                               #4  0x00007ff861a9d7dc impl_thrd_routine (radeonsi_dri.so + 0x9d7dc)
                                               #5  0x00007ff86a2a91b7 start_thread (libc.so.6 + 0x961b7)
                                               #6  0x00007ff86a32b39c __clone3 (libc.so.6 + 0x11839c)

                                               Stack trace of thread 1684:
                                               #0  0x00007ff86a2a5919 __futex_abstimed_wait_common (libc.so.6 + 0x92919)
                                               #1  0x00007ff86a2a82e9 pthread_cond_wait@@GLIBC_2.3.2 (libc.so.6 + 0x952e9)
                                               #2  0x00007ff861a9d8ad cnd_wait (radeonsi_dri.so + 0x9d8ad)
                                               #3  0x00007ff861a7b46b util_queue_thread_func (radeonsi_dri.so + 0x7b46b)
                                               #4  0x00007ff861a9d7dc impl_thrd_routine (radeonsi_dri.so + 0x9d7dc)
                                               #5  0x00007ff86a2a91b7 start_thread (libc.so.6 + 0x961b7)
                                               #6  0x00007ff86a32b39c __clone3 (libc.so.6 + 0x11839c)

                                               Stack trace of thread 1687:
                                               #0  0x00007ff86a2a5919 __futex_abstimed_wait_common (libc.so.6 + 0x92919)
                                               #1  0x00007ff86a2a82e9 pthread_cond_wait@@GLIBC_2.3.2 (libc.so.6 + 0x952e9)
                                               #2  0x00007ff861a9d8ad cnd_wait (radeonsi_dri.so + 0x9d8ad)
                                               #3  0x00007ff861a7b46b util_queue_thread_func (radeonsi_dri.so + 0x7b46b)
                                               #4  0x00007ff861a9d7dc impl_thrd_routine (radeonsi_dri.so + 0x9d7dc)
                                               #5  0x00007ff86a2a91b7 start_thread (libc.so.6 + 0x961b7)
                                               #6  0x00007ff86a32b39c __clone3 (libc.so.6 + 0x11839c)

                                               Stack trace of thread 1688:
                                               #0  0x00007ff86a2a5919 __futex_abstimed_wait_common (libc.so.6 + 0x92919)
                                               #1  0x00007ff86a2a82e9 pthread_cond_wait@@GLIBC_2.3.2 (libc.so.6 + 0x952e9)
                                               #2  0x00007ff861a9d8ad cnd_wait (radeonsi_dri.so + 0x9d8ad)
                                               #3  0x00007ff861a7b46b util_queue_thread_func (radeonsi_dri.so + 0x7b46b)
                                               #4  0x00007ff861a9d7dc impl_thrd_routine (radeonsi_dri.so + 0x9d7dc)
                                               #5  0x00007ff86a2a91b7 start_thread (libc.so.6 + 0x961b7)
                                               #6  0x00007ff86a32b39c __clone3 (libc.so.6 + 0x11839c)

                                               Stack trace of thread 1681:
                                               #0  0x00007ff86a2a5919 __futex_abstimed_wait_common (libc.so.6 + 0x92919)
                                               #1  0x00007ff86a2a82e9 pthread_cond_wait@@GLIBC_2.3.2 (libc.so.6 + 0x952e9)
                                               #2  0x00007ff861a9d8ad cnd_wait (radeonsi_dri.so + 0x9d8ad)
                                               #3  0x00007ff861a7b46b util_queue_thread_func (radeonsi_dri.so + 0x7b46b)
                                               #4  0x00007ff861a9d7dc impl_thrd_routine (radeonsi_dri.so + 0x9d7dc)
                                               #5  0x00007ff86a2a91b7 start_thread (libc.so.6 + 0x961b7)
                                               #6  0x00007ff86a32b39c __clone3 (libc.so.6 + 0x11839c)
                                               ELF object binary architecture: AMD x86-64

Expected result

A very broken but visible Budgie.

Additional information

No response

serebit commented 3 months ago

Can you coredumpctl debug the segfault and get a backtrace from gdb? From what you've showed, the segfault looks to be happening somewhere within xwayland_surface_set_geometry, so I do have a starting point to debug from.

serebit commented 3 months ago

Never mind, saw the problem almost immediately. Try latest v1 and see if that works. Commit 9af5081.

Conan-Kudo commented 3 months ago

Updated builds have been published in COPR.

JoshStrobl commented 3 months ago

Progress! I saw budgie-panel for a second before getting kicked back to SDDM.

If you have any recommendations on the best way to debug it while under a Wayland compositor that'd be appreciated as using coredump debug PID just shows a black screen and reports the following:

unable to lock lockfile /run/user/1000/wayland-0.lock, maybe another compositor is running

Attached is the output from journalctl: magpie-wm-9af5081-journalctl.log

Linked via Proton Drive is the output file of coredumpctl dump of the process. Too large to share via GitHub.

serebit commented 3 months ago

It seems to be segfaulting within Server::focus_view based on the journald log, though I can't see any obvious place where a segfault would be happening. I also can't check the coredump you linked directly, as I'm not on Fedora. Does running coredumpctl debug on the process that you dumped give a line number?

JoshStrobl commented 3 months ago

Here's the bt. I think my next step will be making sure there aren't any applications set to autostart that could be triggering the behavior.

#0  0x00005557e80cd956 in Server::focus_view(std::shared_ptr<View>&&, wlr_surface*) ()
#1  0x00005557e80ce13c in XdgView::map() ()
#2  0x00007fd6d0299d3c in wl_signal_emit_mutable (signal=<optimized out>, data=0x0) at ../src/wayland-server.c:2241
#3  0x00007fd6d01fad18 in surface_commit_state (surface=0x7fd6c911fc90, next=0x7fd6c911fe10) at ../types/wlr_compositor.c:499
#4  0x00007fd6d00d6056 in ffi_call_unix64 () at ../src/x86/unix64.S:104
#5  0x00007fd6d00d26a0 in ffi_call_int (cif=cif@entry=0x7fd6cf1ff280, fn=<optimized out>, rvalue=<optimized out>, avalue=<optimized out>, closure=closure@entry=0x0) at ../src/x86/ffi64.c:673
#6  0x00007fd6d00d54ee in ffi_call (cif=cif@entry=0x7fd6cf1ff280, fn=<optimized out>, rvalue=rvalue@entry=0x0, avalue=avalue@entry=0x7fd6cf1ff350) at ../src/x86/ffi64.c:710
#7  0x00007fd6d02987e3 in wl_closure_invoke (closure=closure@entry=0x7fd6c9129540, target=<optimized out>, target@entry=0x7fd6c9120040, opcode=opcode@entry=6, data=<optimized out>, data@entry=0x7fd6c90e8340, flags=2)
    at ../src/connection.c:1025
#8  0x00007fd6d029d080 in wl_client_connection_data (fd=<optimized out>, mask=<optimized out>, data=0x7fd6c90e8340) at ../src/wayland-server.c:438
#9  0x00007fd6d029b852 in wl_event_loop_dispatch (loop=0x7fd6c8000c60, timeout=timeout@entry=-1) at ../src/event-loop.c:1027
#10 0x00007fd6d029c0d5 in wl_display_run (display=0x7fd6c8000b70) at ../src/wayland-server.c:1493
#11 0x00005557e80c16cf in run_compositor(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, std::promise<char const*>) ()
#12 0x00005557e80d1aee in std::thread::_State_impl<std::thread::_Invoker<std::tuple<int (*)(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, std::promise<char const*>), std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::promise<char const*> > > >::_M_run() ()
#13 0x00007fd6cfee6524 in std::execute_native_thread_routine (__p=0x5557e84cb830) at ../../../../../libstdc++-v3/src/c++11/thread.cc:104
#14 0x00007fd6cfbc61b7 in start_thread (arg=<optimized out>) at pthread_create.c:447
#15 0x00007fd6cfc4839c in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
(gdb) bt
#0  0x00005557e80cd956 in Server::focus_view(std::shared_ptr<View>&&, wlr_surface*) ()
#1  0x00005557e80ce13c in XdgView::map() ()
#2  0x00007fd6d0299d3c in wl_signal_emit_mutable (signal=<optimized out>, data=0x0) at ../src/wayland-server.c:2241
#3  0x00007fd6d01fad18 in surface_commit_state (surface=0x7fd6c911fc90, next=0x7fd6c911fe10) at ../types/wlr_compositor.c:499
#4  0x00007fd6d00d6056 in ffi_call_unix64 () at ../src/x86/unix64.S:104
#5  0x00007fd6d00d26a0 in ffi_call_int (cif=cif@entry=0x7fd6cf1ff280, fn=<optimized out>, rvalue=<optimized out>, avalue=<optimized out>, closure=closure@entry=0x0) at ../src/x86/ffi64.c:673
#6  0x00007fd6d00d54ee in ffi_call (cif=cif@entry=0x7fd6cf1ff280, fn=<optimized out>, rvalue=rvalue@entry=0x0, avalue=avalue@entry=0x7fd6cf1ff350) at ../src/x86/ffi64.c:710
#7  0x00007fd6d02987e3 in wl_closure_invoke (closure=closure@entry=0x7fd6c9129540, target=<optimized out>, target@entry=0x7fd6c9120040, opcode=opcode@entry=6, data=<optimized out>, data@entry=0x7fd6c90e8340, flags=2)
    at ../src/connection.c:1025
#8  0x00007fd6d029d080 in wl_client_connection_data (fd=<optimized out>, mask=<optimized out>, data=0x7fd6c90e8340) at ../src/wayland-server.c:438
#9  0x00007fd6d029b852 in wl_event_loop_dispatch (loop=0x7fd6c8000c60, timeout=timeout@entry=-1) at ../src/event-loop.c:1027
#10 0x00007fd6d029c0d5 in wl_display_run (display=0x7fd6c8000b70) at ../src/wayland-server.c:1493
#11 0x00005557e80c16cf in run_compositor(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, std::promise<char const*>) ()
#12 0x00005557e80d1aee in std::thread::_State_impl<std::thread::_Invoker<std::tuple<int (*)(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, std::promise<char const*>), std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::promise<char const*> > > >::_M_run() ()
#13 0x00007fd6cfee6524 in std::execute_native_thread_routine (__p=0x5557e84cb830) at ../../../../../libstdc++-v3/src/c++11/thread.cc:104
#14 0x00007fd6cfbc61b7 in start_thread (arg=<optimized out>) at pthread_create.c:447
#15 0x00007fd6cfc4839c in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78