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

Frequent Screen Tearing and Freezing #7922

Open
1 task done
TadhgFJ opened this issue Sep 26, 2024 · 6 comments
Open
1 task done

Frequent Screen Tearing and Freezing #7922

TadhgFJ opened this issue Sep 26, 2024 · 6 comments
Labels
bug Something isn't working

Comments

@TadhgFJ
Copy link

TadhgFJ commented Sep 26, 2024

Already reported ? *

  • I have searched the existing open and closed issues.

Regression?

No

System Info and Version

System/Version info
Date: Sun Sep 8 16:48:21 2024
Tag: v0.43.0, commits: 5196

flags: (if any)


System Information:
System name: Linux
Node name: KingCollege
Release: 6.10.10-arch1-1
Version: #1 SMP PREEMPT_DYNAMIC Thu, 12 Sep 2024 17:21:02 +0000


GPU information: 
03:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Phoenix3 [1002:1900] (rev 06) (prog-if 00 [VGA controller])


os-release: NAME="Arch Linux"
PRETTY_NAME="Arch Linux"
ID=arch
BUILD_ID=rolling
ANSI_COLOR="38;2;23;147;209"
HOME_URL="https://archlinux.org/"
DOCUMENTATION_URL="https://wiki.archlinux.org/"
SUPPORT_URL="https://bbs.archlinux.org/"
BUG_REPORT_URL="https://gitlab.archlinux.org/groups/archlinux/-/issues"
PRIVACY_POLICY_URL="https://terms.archlinux.org/docs/privacy-policy/"
LOGO=archlinux-logo


plugins:

======Config-Start======


Config File: /home/tadhg/.config/hypr/hyprland.conf: Read Succeeded
################

# See https://wiki.hyprland.org/Configuring/Monitors/
monitor=,2880x1800@120,0x0,1

# See https://wiki.hyprland.org/Configuring/Keywords/

# Set programs that you use
$terminal = footclient
$fileManager = footclient lf
$rssreader = footclient newsboat
$menu = wofi --show drun
$browser = firefox

# Autostart necessary processes (like notifications daemons, status bars, etc.)
# Or execute your favorite apps at launch like this:

exec-once = pipewire & wireplumber
exec-once = hyprpaper & foot --server & waybar & nm-applet & hypridle & swaync

#############################
### ENVIRONMENT VARIABLES ###
#############################

# See https://wiki.hyprland.org/Configuring/Environment-variables/

env = XCURSOR_SIZE,24
env = HYPRCURSOR_SIZE,24


#####################
### LOOK AND FEEL ###
#####################

# Refer to https://wiki.hyprland.org/Configuring/Variables/

# https://wiki.hyprland.org/Configuring/Variables/#general
general { 
    gaps_in = 3
    gaps_out = 10

    border_size = 2

    # https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
    col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
    col.inactive_border = rgba(595959aa)

    # Set to true enable resizing windows by clicking and dragging on borders and gaps
    resize_on_border = true

    # Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on
    allow_tearing = false

    layout = dwindle
}

# https://wiki.hyprland.org/Configuring/Variables/#decoration
decoration {
    rounding = 2

    # Change transparency of focused and unfocused windows
    active_opacity = 1.0
    inactive_opacity = 1.0

    drop_shadow = true
    shadow_range = 4
    shadow_render_power = 3
    col.shadow = rgba(1a1a1aee)

    # https://wiki.hyprland.org/Configuring/Variables/#blur
    blur {
        enabled = true
        size = 1
        passes = 2
        
        vibrancy = 0.1696
    }
}

# https://wiki.hyprland.org/Configuring/Variables/#animations
animations {
    enabled = true

    # Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more

    bezier = myBezier, 0.05, 0.9, 0.1, 1.05

    animation = windows, 1, 7, myBezier
    animation = windowsOut, 1, 7, default, popin 80%
    animation = border, 1, 10, default
    animation = borderangle, 1, 8, default
    animation = fade, 1, 7, default
    animation = workspaces, 1, 6, default
}

# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
dwindle {
    pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
    preserve_split = true # You probably want this
}

# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
master {
    new_status = master
}

# https://wiki.hyprland.org/Configuring/Variables/#misc
misc { 
    force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers
    disable_hyprland_logo = false # If true disables the random hyprland logo / anime girl background. :(
    enable_swallow = true
    swallow_regex = ^(footclient|lf|foot)$
}


#############
### INPUT ###
#############

# https://wiki.hyprland.org/Configuring/Variables/#input
input {
    kb_layout = ie
    kb_variant =
    kb_model =
    kb_options =
    kb_rules =

    follow_mouse = 1

    sensitivity = 0 # -1.0 - 1.0, 0 means no modification.

    touchpad {
        natural_scroll = false
    }
}

# https://wiki.hyprland.org/Configuring/Variables/#gestures
gestures {
    workspace_swipe = true 
}

# Example per-device config
# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more
device {
    name = epic-mouse-v1
    sensitivity = -0.5
}

debug {
    disable_logs = false
    }


####################
### KEYBINDINGSS ###
####################

# See https://wiki.hyprland.org/Configuring/Keywords/
$mainMod = SUPER # Sets "Windows" key as main modifier

# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
bind = $mainMod SHIFT, C, killactive,
bind = $mainMod SHIFT, Q, exit,
bind = $mainMod, SPACE, togglefloating,
bind = $mainMod, D, exec, $menu
bind = $mainMod, P, pseudo, # dwindle
bind = $mainMod, J, togglesplit, # dwindle
bind = $mainMod, L, exec, hyprlock
bind = , XF86AudioRaiseVolume, exec, amixer set Master 5%+
bind = , XF86AudioLowerVolume, exec, amixer set Master 5%-
bind = , XF86AudioMute, exec, amixer set Master toggle
bind = , XF86MonBrightnessDown, exec, brightnessctl set 5%-
bind = , XF86MonBrightnessUp, exec, brightnessctl set 5%+
bind = SHIFT CONTROL, escape, exec, $terminal btop

# Launch
bind = $mainMod, Return, exec, $terminal
bind = $mainMod, E, exec, $fileManager
bind = $mainMod, R, exec, $terminal newsboat
bind = $mainMod SHIFT, F, exec, firefox
bind = $mainMod SHIFT, D, exec, discord
bind = , PRINT, exec, hyprshot -m region -o ~/ggraf/screencaps
bind = $mainMod, PRINT, exec, hyprshot -m output -o ~/ggraf/screencaps

# Move focus with mainMod + arrow keys
bind = $mainMod, left, movefocus, l
bind = $mainMod, right, movefocus, r
bind = $mainMod, up, movefocus, u
bind = $mainMod, down, movefocus, d

# Switch workspaces with mainMod + [0-9]
bind = $mainMod, 1, workspace, 1
bind = $mainMod, 2, workspace, 2
bind = $mainMod, 3, workspace, 3
bind = $mainMod, 4, workspace, 4
bind = $mainMod, 5, workspace, 5
bind = $mainMod, 6, workspace, 6
bind = $mainMod, 7, workspace, 7
bind = $mainMod, 8, workspace, 8
bind = $mainMod, 9, workspace, 9
bind = $mainMod, 0, workspace, 10

# Move active window to a workspace with mainMod + SHIFT + [0-9]
bind = $mainMod SHIFT, 1, movetoworkspace, 1
bind = $mainMod SHIFT, 2, movetoworkspace, 2
bind = $mainMod SHIFT, 3, movetoworkspace, 3
bind = $mainMod SHIFT, 4, movetoworkspace, 4
bind = $mainMod SHIFT, 5, movetoworkspace, 5
bind = $mainMod SHIFT, 6, movetoworkspace, 6
bind = $mainMod SHIFT, 7, movetoworkspace, 7
bind = $mainMod SHIFT, 8, movetoworkspace, 8
bind = $mainMod SHIFT, 9, movetoworkspace, 9
bind = $mainMod SHIFT, 0, movetoworkspace, 10

# Example special workspace (scratchpad)
bind = $mainMod, S, togglespecialworkspace, magic
bind = $mainMod SHIFT, S, movetoworkspace, special:magic

# Scroll through existing workspaces with mainMod + scroll
bind = $mainMod, mouse_down, workspace, e+1
bind = $mainMod, mouse_up, workspace, e-1

# Move/resize windows with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod SHIFT, mouse:272, resizewindow


##############################
### WINDOWS AND WORKSPACES ###
##############################

# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules

# Example windowrule v1
# windowrule = float, ^(kitty)$

# Example windowrule v2
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$

windowrulev2 = suppressevent maximize, class:.* # You'll probably like this.

======Config-End========


Description

Hyprland frequently freezes and screen tears with seemingly no rhyme or reason. Sometimes I can go half an hour with no issue and sometimes I cant go half a minute. Freezes can last for quite a while, generally a minute or two but I've had a few 5 minute ones that I didn't bother waiting for before force exiting. It also seems to be independent of system resources as I can experience it regardless of what I have open. I run Hyprland on 2 machines and I've never had this problem on the other machine, and I've always had the problem on this machine (I've been having this issue since I first installed Hyprland on this machine.)

How to reproduce

I can't get it to occur with 100% consistency when I want to, but general things that can cause it to occur are scrolling quickly, changing workspaces, or opening a new window.

Crash reports, logs, images, videos

hyprland.log

@TadhgFJ TadhgFJ added the bug Something isn't working label Sep 26, 2024
@vaxerski
Copy link
Member

it's likely a problem with your setup. Is this reproducible on another wayland env?

@TadhgFJ
Copy link
Author

TadhgFJ commented Sep 27, 2024

it's likely a problem with your setup. Is this reproducible on another wayland env?

I tried Hyprland on this same machine in 3 different Distros (Arch, Artix and Fedora) all to the same effect. I've never had this issue on another machine.

@vaxerski
Copy link
Member

is this reproducible on another wayland environment is my question (e.g. sway or kwin)

@TadhgFJ
Copy link
Author

TadhgFJ commented Sep 30, 2024

Kwin had minor screen tearing but nothing quite so disruptive as this, and after trying Sway for a half an hour or so I had no issues whatsoever.

@ding444
Copy link

ding444 commented Oct 1, 2024

Maybe related:

I performed an upgrade yesterday and had major tearing, slowness, and freezing issues -- similar to electron issues over 6 months ago but worse. It also disabled one of my monitors (vertical). The upgrades I performed were nvidia related (dkms, utils, opencl to 560.35.3) in addition to linux and linux-headers (to 6.11.1).

It seemed like an nvidia issue to me from the graphical "symptoms", so I downgraded the nvidia drivers back down to 555.58.02 and tweaked things around with no success. After also downgrading the linux and linux-headers back to 6.10.10 everything went back to working perfectly.

Edit: I just re-upgraded the nvidia stuff to 560 and everything is working great. The culprit for me was linux and linux headers 6.11.1.

@TadhgFJ
Copy link
Author

TadhgFJ commented Oct 3, 2024

Maybe related:

I performed an upgrade yesterday and had major tearing, slowness, and freezing issues -- similar to electron issues over 6 months ago but worse. It also disabled one of my monitors (vertical). The upgrades I performed were nvidia related (dkms, utils, opencl to 560.35.3) in addition to linux and linux-headers (to 6.11.1).

It seemed like an nvidia issue to me from the graphical "symptoms", so I downgraded the nvidia drivers back down to 555.58.02 and tweaked things around with no success. After also downgrading the linux and linux-headers back to 6.10.10 everything went back to working perfectly.

Edit: I just re-upgraded the nvidia stuff to 560 and everything is working great. The culprit for me was linux and linux headers 6.11.1.

Good that that works for you but I'm on AMD and have been having this issue since I first installed Linux at Kernel Version 6.9.3

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants