yshui / picom

A lightweight compositor for X11 with animation support
https://picom.app/
Other
4.1k stars 585 forks source link

page flip errors with amdgpu and picom glx/egl backends #1328

Closed thalin closed 1 month ago

thalin commented 1 month ago

Platform

NixOS 24.11 unstable rev d0e1602ddde669d5beb01aec49d71a51937ed7be

GPU, drivers, and screen setup

AMD 8700G iGPU (device ID 5567) using amdgpu open source driver version 2.0.316, Samsung Odyssey G9

Environment

qtile 0.28.1

picom version

v11

Diagnostics **Version:** v11 ### Extensions: * Shape: Yes * RandR: Yes * Present: Present ### Misc: * Use Overlay: No (Another compositor is already running) * Config file used: /home/thalin/.config/picom/picom.conf ### Drivers (inaccurate): AMDGPU, Radeon ### Backend: glx * Driver vendors: * GLX: Mesa Project and SGI * GL: AMD * GL renderer: AMD Radeon Graphics (radeonsi, gfx1103_r1, LLVM 18.1.8, DRM 3.54, 6.6.47) * Accelerated: 1 ### Backend: egl * Driver vendors: * EGL: Mesa Project * EGL driver: radeonsi * GL: AMD * GL renderer: AMD Radeon Graphics (radeonsi, gfx1103_r1, LLVM 18.1.8, DRM 3.54, 6.6.47)

Configuration:

Configuration file ``` active-opacity = 1.000000; backend = "glx"; daemon = true; fade-delta = 10; fade-exclude = [ ]; fade-in-step = 0.028000; fade-out-step = 0.030000; fading = false; inactive-opacity = 1.000000; opacity-rule = [ ]; shadow = false; shadow-exclude = [ ]; shadow-offset-x = -15; shadow-offset-y = -15; shadow-opacity = 0.750000; vsync = false; wintypes: { dropdown_menu = { opacity = 1.000000; }; popup_menu = { opacity = 1.000000; }; }; ```

Steps of reproduction

  1. Start picom
  2. journalctl -f

Expected behavior

No messages

Current Behavior

Many, many messages like the following:

Aug 28 21:55:03 msa1 xserver-wrapper[313038]: (WW) AMDGPU(0): flip queue failed: Invalid argument
Aug 28 21:55:03 msa1 xserver-wrapper[313038]: (WW) AMDGPU(0): Page flip failed: Invalid argument
Aug 28 21:55:03 msa1 xserver-wrapper[313038]: (EE) AMDGPU(0): present flip failed

Always in this group of 3.

Otherwise, no abnormal behavior as far as I can see. Visually there's no difference between xrender backend (which doesn't cause this error) and glx/egl. However, xsecurelock doesn't work well with the xrender backend, so I was hoping to use the glx backend...it just spams my system log an annoying amount.

yshui commented 1 month ago

This is a Xorg driver issue. This is not picom bug. Also please try updating to the latest picom version, see if that helps.