Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Firefox from v. 117 become laggy scroll #1122

Open
dymn opened this issue Sep 4, 2023 · 1 comment
Open

Firefox from v. 117 become laggy scroll #1122

dymn opened this issue Sep 4, 2023 · 1 comment

Comments

@dymn
Copy link

dymn commented Sep 4, 2023

Platform

Gentoo amd64

GPU, drivers, and screen setup

AMD RX 6700 XT, mesa-23.2.0, xf86-video-amdgpu-23.0.0, xf86-video-ati-22.0.0, one LG 24GN600 144 MHz monitor

$  glxinfo -B                                                                                                                                                                 13:19
name of display: :0
display: :0  screen: 0
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
    Vendor: AMD (0x1002)
    Device: AMD Radeon RX 6700 XT (navi22, LLVM 16.0.6, DRM 3.52, 6.4.12-gentoo) (0x73df)
    Version: 23.2.0
    Accelerated: yes
    Video memory: 12288MB
    Unified memory: no
    Preferred profile: core (0x1)
    Max core profile version: 4.6
    Max compat profile version: 4.6
    Max GLES1 profile version: 1.1
    Max GLES[23] profile version: 3.2
Memory info (GL_ATI_meminfo):
    VBO free memory - total: 11881 MB, largest block: 11881 MB
    VBO free aux. memory - total: 15953 MB, largest block: 15953 MB
    Texture free memory - total: 11881 MB, largest block: 11881 MB
    Texture free aux. memory - total: 15953 MB, largest block: 15953 MB
    Renderbuffer free memory - total: 11881 MB, largest block: 11881 MB
    Renderbuffer free aux. memory - total: 15953 MB, largest block: 15953 MB
Memory info (GL_NVX_gpu_memory_info):
    Dedicated video memory: 12288 MB
    Total available memory: 28303 MB
    Currently available dedicated video memory: 11881 MB
OpenGL vendor string: AMD
OpenGL renderer string: AMD Radeon RX 6700 XT (navi22, LLVM 16.0.6, DRM 3.52, 6.4.12-gentoo)
OpenGL core profile version string: 4.6 (Core Profile) Mesa 23.2.0-rc2
OpenGL core profile shading language version string: 4.60
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile

OpenGL version string: 4.6 (Compatibility Profile) Mesa 23.2.0-rc2
OpenGL shading language version string: 4.60
OpenGL context flags: (none)
OpenGL profile mask: compatibility profile

OpenGL ES profile version string: OpenGL ES 3.2 Mesa 23.2.0-rc2
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20

Environment

openbox-3.6.1

picom version

$  picom --version                                                                                                                                                            
vgit-8cc50

and the same problem with picom-10.2.

Diagnostics **Version:** vgit-8cc50

Extensions:

  • Shape: Yes
  • RandR: Yes
  • Present: Present

Misc:

  • Use Overlay: No
    (Another compositor is already running)
  • Config file used: /home/user/.config/picom.conf

Drivers (inaccurate):

AMDGPU, Radeon

Backend: glx

  • Driver vendors:
  • GLX: Mesa Project and SGI
  • GL: AMD
  • GL renderer: AMD Radeon RX 6700 XT (navi22, LLVM 16.0.6, DRM 3.52, 6.4.12-gentoo)
  • Accelerated: 1

Backend: egl

  • Driver vendors:
  • EGL: Mesa Project
  • EGL driver: radeonsi
  • GL: AMD
  • GL renderer: AMD Radeon RX 6700 XT (navi22, LLVM 16.0.6, DRM 3.52, 6.4.12-gentoo)

Configuration:

Configuration file
# Shadow
shadow = true;
no-dnd-shadow = true;
no-dock-shadow = true;
#shadow-radius = 7;
#shadow-offset-x = -7;
#shadow-offset-y = -7;
shadow-radius = 15;
shadow-offset-x = -15;
shadow-offset-y = -15;
# shadow-opacity = 0.7;
# shadow-red = 0.0;
# shadow-green = 0.0;
# shadow-blue = 0.0;
shadow-exclude = [
        "name = 'Notification'",
        "n:w:*VirtualBox*",
        "i:e:Conky",
        "class_g = 'Cairo-clock'",
        "class_g ?= 'Notify-osd'",
        "class_g ?= 'VirtualBox'",
        "class_g ?= 'Xfce4-notifyd'",
        "class_g ?= 'Xfce4-power-manager'",
        "class_g ?= 'Xfce4-panel'",
        "class_g ?= 'Xfce4-screenshooter'",
        "class_g = 'firefox' && argb",
        "class_g = 'firefox-esr' && argb",
        "class_g = 'Navigator' && window_type = 'utility'",
        "name *= 'Telegram' && argb"
];
# shadow-exclude = "n:e:Notification";
# shadow-exclude-reg = "x10+0+0";
# xinerama-shadow-crop = true;

# Opacity
inactive-opacity = 1.0;
# active-opacity = 0.8;
frame-opacity = 1.0;
inactive-opacity-override = false;
alpha-step = 0.06;
# inactive-dim = 0.2;
# inactive-dim-fixed = true;
# blur-background = true;
# blur-background-frame = true;
blur-method = "dual_kawase";
# blur-strength = 15;
blur-kern = "3x3box";
# blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1";
# blur-background-fixed = true;
blur-background-exclude = [
	"window_type = 'dock'",
	"window_type = 'desktop'",
	"_GTK_FRAME_EXTENTS@:c",
        #"class_g ?= 'dunst'",
	"(class_g = 'firefox' || class_g = 'firefox-esr' || class_g = 'Thunderbird') && (window_type = 'utility' || window_type = 'popup_menu') && argb"
];
# opacity-rule = [ "80:class_g = 'URxvt'" ];

# Fading
fading = false;
# fade-delta = 30;
fade-in-step = 0.03;
fade-out-step = 0.03;
# no-fading-openclose = true;
# no-fading-destroyed-argb = true;
fade-exclude = [ ];

# Other
#backend = "xrender";
backend = "glx";
#backend = "egl";
#backend = "legacy-backends";

mark-wmwin-focused = true;
mark-ovredir-focused = true;

detect-rounded-corners = true;
detect-client-opacity = true;

vsync = true;
#refresh-rate = 0;

#dbe = false;
paint-on-overlay = true;
#sw-opti = true;
unredir-if-possible = true;
# unredir-if-possible-delay = 5000;
# unredir-if-possible-exclude = [ ];
focus-exclude = [ "class_g = 'Cairo-clock'" ];
detect-transient = true;
detect-client-leader = true;
#invert-color-include = [ ];
resize-damage = 1;

# GLX backend
#glx-no-stencil = true;
glx-copy-from-front = false;
glx-use-copysubbuffermesa = true;
glx-no-rebind-pixmap = true;
use-damage = true;
xrender-sync = true;
#xrender-sync-fence = true; #
#no-ewmh-fullscreen = true; #
use-ewmh-active-win = true; #

# Do not fade destroyed ARGB windows with WM frame. Workaround bugs in Openbox, Fluxbox, etc.
no-fading-destroyed-argb = true;

# Window type settings
wintypes:
{
  tooltip = { fade = true; shadow = true; opacity = 0.9; focus = true; full-shadow = false; };
#  dock = { shadow = false; clip-shadow-above = true; }
#  dnd = { shadow = false; }
#  popup_menu = { shadow = false; }
#  dropdown_menu = { shadow = false; }
};

Steps of reproduction

  1. Run Firefox-117.
  2. Open a page with lots of images and text, for example https://dymontiger.livejournal.com/19195316.html or https://mobile-review.com/all/articles/newphones/5-glavnyh-smartfonov-avgusta/
  3. Scroll down and up several times. Scrolling becomes laggy. The bad thing is that the bug can't be reproduced the first time. You need to scroll several times. And one more thing: scrolling does not need to be fast.

Expected behavior

  1. Run Firefox-115.2 (or 116).
  2. Open a page with lots of images and text, for example https://dymontiger.livejournal.com/19195316.html or https://mobile-review.com/all/articles/newphones/5-glavnyh-smartfonov-avgusta/
  3. Scroll down and up several times. Scroll is smoothly.

Current Behavior

Scrolling becomes laggy

Stack trace

None

OpenGL trace

If necessary, I will do it.

Other details

With xfce-4.18 there is no problem.
With backend= "xrender" - no lags.
With backend = "egl" - same problem.

@dymn
Copy link
Author

dymn commented Sep 4, 2023

Correction: with backend= "xrender" - there are also lags.

Later I have been testing and searching for the problem for several hours using mozregression.
Found a bug:
https://bugzilla.mozilla.org/show_bug.cgi?id=1836668
In the patch
https://hg.mozilla.org/mozilla-central/rev/e1c387461f14
I saw a new variable: gfx.x11.glx_sgi_video_sync
I changed it in about:config in Firefox to true - and everything started working as before.

Please tell me - is this a problem in Firefox or in Picom? But if in Firefox, then why is there no problem in xfce-4.18?
Maybe there is some option in the picom settings that would correspond to this innovation in Firefox?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant