hyprwm / Hyprland

Hyprland is an independent, highly customizable, dynamic tiling Wayland compositor that doesn't sacrifice on its looks.
https://hyprland.org
BSD 3-Clause "New" or "Revised" License
21.94k stars 913 forks source link

System freezing randomly after some time #6689

Open h0m3 opened 5 months ago

h0m3 commented 5 months ago

Regression?

No

System Info and Version

System/Version info ```sh Hyprland, built from branch at commit 918d8340afd652b011b937d29d5eea0be08467f5 (flake.lock: update). Date: Tue Jun 25 12:06:02 2024 Tag: v0.41.2, commits: 4886 flags: (if any) System Information: System name: Linux Node name: fireheart Release: 6.6.35-2-lts Version: #1 SMP PREEMPT_DYNAMIC Fri, 21 Jun 2024 21:05:23 +0000 GPU information: 3f:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Navi 31 [Radeon RX 7900 XT/7900 XTX/7900M] [1002:744c] (rev c8) (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/artur/.config/hypr/hyprland.conf: Read Succeeded autogenerated = 0 # remove this line to remove the warning ################ ### MONITORS ### ################ # See https://wiki.hyprland.org/Configuring/Monitors/ monitor=DP-2,2560x1440@165,0x0,1 monitor=DP-1,2560x1440@165,-1440x-580,1,transform,3 monitor=HDMI-A-1,2560x1440@144,2560x0,1 workspace=1,monitor:DP-2,default:1 workspace=8,monitor:DP-1,default:1 workspace=9,monitor:HDMI-A-1,default:1 ################### ### MY PROGRAMS ### ################### # See https://wiki.hyprland.org/Configuring/Keywords/ # Set programs that you use $terminal = alacritty $fileManager = dolphin $menu = krunner ################# ### AUTOSTART ### ################# # Autostart necessary processes (like notifications daemons, status bars, etc.) # Or execute your favorite apps at launch like this: exec-once = nwg-panel exec-once = hyprpaper exec-once = nm-applet exec-once = /home/artur/.dotfiles/scripts/hyprpaper.sh #exec-once = krunner -d # exec-once = $terminal # exec-once = nm-applet & # exec-once = waybar & hyprpaper & firefox ############################# ### ENVIRONMENT VARIABLES ### ############################# # See https://wiki.hyprland.org/Configuring/Environment-variables/ env = XCURSOR_SIZE,24 env = HYPRCURSOR_SIZE,24 env = QT_QPA_PLATFORMTHEME,qt5ct env = QT_AUTO_SCREEN_SCALE_FACTOR,1 # env = QT_QPA_PLATFORM,wayland;xcb env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1 ##################### ### LOOK AND FEEL ### ###################env = QT_QPA_PLATFORM,wayland;xcb## # Refer to https://wiki.hyprland.org/Configuring/Variables/ # https://wiki.hyprland.org/Configuring/Variables/#general general { gaps_in = 5 gaps_out = 10 border_size = 1 # 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 = 5 # Change transparency of focused and unfocused windows active_opacity = 1.0 inactive_opacity = 1.0 drop_shadow = false shadow_range = 4 shadow_render_power = 3 col.shadow = rgba(1a1a1aee) # https://wiki.hyprland.org/Configuring/Variables/#blur blur { enabled = true size = 3 passes = 1 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_is_master = true # } # 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. :( } ############# ### INPUT ### ############# # https://wiki.hyprland.org/Configuring/Variables/#input input { kb_layout = us 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 = false } # 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 } #################### ### 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, T, exec, $terminal bind = $mainMod, Q, killactive, bind = $mainMod, R, exec, $menu bind = $mainMod, F, togglefloating, bind = $mainMod, E, exec, $fileManager bind = $mainMod, S, togglesplit, # dwindle bind = $mainMod, M, exit, # 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 position bind = $mainMod SHIFT, left, movewindow, l bind = $mainMod SHIFT, right, movewindow, r bind = $mainMod SHIFT, up, movewindow, u bind = $mainMod SHIFT, down, movewindow, d # 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 # 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, mouse:273, 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

Hello,

My system is randomly freezing after sometime with hyprland open. Normally takes about 5 minutes but I cannot pinpoint what makes the system hangs.

When it freezes I loose all my keyboard and mouse input, so I cannot switch to another tty but ssh is still working although slow.

When the system hangs I see some drm related messages on my dmesg. I also have KDE Plasma and on Plasma my system doesn't show those behaviours in both X11 or Wayland.

I've tried rebooting sddm with systemd but the system kept frozen. In order to restore my system I have to do a hard reset on the case (didn't try reboot trough ssh though).

My system is: Arch Linux (btw hahaha) Kernel 6.6.35-2-lts but also hangs on zen AMD Ryzen 5950X, 64GB of DDR4 RAM Asus B550 ProArt Creator (latest BIOS) Sapphire Pulse RX 7900 XTX (not nvidia hahaha)

Before I realized it was only happening on hyprland I've suspected hardware, so I've changed all the hardware (i have another box) except the GPU and the OS SSD and the hang continued. I've also put an Asrock RX 7700 XT but this one instead of freezing it just rebooted the entire machine. This card also works fine on Plasma for some reason.

How to reproduce

Use hyprland for about 5 minutes

Crash reports, logs, images, videos

pc.txt

This is the dmesg right after the computer freezes, before that theres just the default boot messages.

Memoframe commented 5 months ago

Kernel 6.6.35-2-lts but also hangs on zen

try few more, some time ago it helped me not to solve but to mitigate hangs

mke21 commented 4 months ago

I have the same. A few weeks ago it was quite often. Now I get a freeze now-and-then. It sometimes freezes the mouse, sometimes both keyboard and mouse. II cannot pinpoint what it is causing this. I don't seem to do specific tasks at the moment of freezing. I am using Manjaro.

Memoframe commented 4 months ago

I have the same. A few weeks ago it was quite often. Now I get a freeze now-and-then. It sometimes freezes the mouse, sometimes both keyboard and mouse. II cannot pinpoint what it is causing this. I don't seem to do specific tasks at the moment of freezing. I am using Manjaro.

I always felt like it was caused by mouse movement, especially over text boxes in browser, but I never could reproduce it.

BasitAli commented 3 months ago

Setting render:explicit_sync_kms to 0 resolves the issue for now. I am on nvidia 560 btw.

vaxerski commented 3 months ago

thats an nvidia issue in the 560 driver

BasitAli commented 3 months ago

I didn't realize this bug was from back in June. Given that kms is only enabled on nvidia 560 and that is buggy. Should kms be off by default until the bug is resolved?

vaxerski commented 3 months ago

no, it's your responsibility as an nvidia user to apply workarounds for your system

BasitAli commented 3 months ago

Hah, fair enough.

h0m3 commented 3 months ago

Setting render:explicit_sync_kms to 0 resolves the issue for now. I am on nvidia 560 btw.

I'm on AMD, RX 7900 XTX and RX 7700 XT tested. I've tried settings both render:explicit_sync and render:explicit_sync_kms to 0 but weirdly hyprland doesn't recognize those are variables even if they are on the doc. So, I cannot attest if this would work. Maybe my version of hyprland still doesn't support render:sexplicit_sync.

Edit: I've upgraded from hyprland 0.41.2-3 (official repos) to hyprland 0.42.0.r1.83a334f9-1 (AUR) and explicit_sync was available, unfortunately I didn't helped my issue. The system keeps freezing.