Re: Help request: strange issue with xfce xfwm4 on AMD hardware, running head

From: Jan Beich <jbeich_at_FreeBSD.org>
Date: Sat, 27 May 2023 22:28:35 UTC
Guido Falsi <mad@madpilot.net> writes:

> On 27/05/23 10:31, Guido Falsi wrote:
>
>> Hi,
>> I'm seeing a strange issue with xfwm4 on my laptop running head
>> (commit 5804b7ab378d6207130bd1685c931da6a4e76e55), using pkgbase,
>> everything build on poudriere.
>> I have filed an issue upstream with a description and some finding:
>> https://gitlab.xfce.org/xfce/xfwm4/-/issues/722
>> I'm testing changing some things but I get the same exact error 100%
>> repeatable.
>> 
>
> A friend of mine suggested trying to disable DRI 3 and this indeed
> allowed xfwm4 to not crash.
>
> This is a workaround, not a fix, and does not explain what is causing
> the behavior.
>
> Not sure where I should be looking, I'll also check changes in kernel
> that could be related.
>
> Again if anyone has some insight please share!

See also https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=253746

Maybe check if DRI3 in Xwayland is also affected e.g.,

  # pkg install sway pam_xdg
  # pw groupmod video -m <user>
  # sysrc seatd_enable=YES
  # service seatd start
  # echo 'session optional pam_xdg.so notroot runtime' >>/etc/pam.d/system
  $ exit # re-login non-root users to get XDG_RUNTIME_DIR

  $ mkdir ~/bin
  $ cat <<\EOF >~/bin/startw
  # Naive startx reimplementation via Sway + Xwayland (rootful)
  export X11_DISPLAY=:$((${DISPLAY#:} + 1))
  if [ -n $XDG_SESSION_COOKIE ]; then
    export LIBSEAT_BACKEND=consolekit2
  fi
  echo "xwayland disable" >~/.sway-xwayland-only.conf
  echo "default_border none"  >>~/.sway-xwayland-only.conf
  echo "for_window [app_id="org.freedesktop.Xwayland"] fullscreen enable" >>~/.sway-xwayland-only.conf
  echo "exec Xwayland ${X11_DISPLAY}" >>~/.sway-xwayland-only.conf
  echo "exec 'env -u WAYLAND_DISPLAY DISPLAY=${X11_DISPLAY} XDG_SESSION_TYPE=x11 sh ~/.xinitrc; swaymsg exit'" >>~/.sway-xwayland-only.conf
  exec sway -c ~/.sway-xwayland-only.conf
  EOF
  $ chmod +x ~/bin/startw

  # pkg install xfce
  $ echo 'exec startxfce4' >>~/.xinitrc
  $ dbus-run-session startw

or (with ConsoleKit2 support)

  # sysrc dbus_enable=YES
  # service dbus start
  $ ck-launch-session dbus-run-session startw