I’ve been putting up with this problem since I got my 9070XT. I thought it was strictly a mesa issue, but this is the third time updating those drivers to have the same problem occur, so I fear it’s likely not that.
Also, I haven’t seen anyone else really complain about it as frequently as I’ve seemed to get it.
Regardless!
Under Hyprland I’ve almost always have gotten my DP-2 output frozen after some time. It’s inconsistent as to when, and it doesn’t appear to be related to the GPU activity, but it does happen more frequently under heavier games. I also have had it on browsers too though.
I honestly am not sure how to even troubleshoot this otherwise. I’ve tried several changes to my nix config and nothing seems to be a silver bullet for it.
For the time being I’m just going to switch to qtile’s X11 backend in order to avoid the issue. I have never had it happen over there. I may test out it’s wayland backend to see if it happens with that though.
The 9070 XT is an extremely new card. Generally any GPU < 6 months old is likely to be pretty buggy on linux. For my 7900 XT, which I got basically on launch day, it was a gradual progression. After 6 months it crashed rarely enough that I was pretty happy with it, but it definitely still crashed regularly. It wasn’t until after a year or so that I would finally consider it really stable. I still get the odd crash on rare occasion.
In general, here are some tips for AMD GPUs, even brand new ones.
Don’t use amdvlk. This is a much worse reference driver than the one we have in mesa.
Actually, in general, don’t try to use any special drivers at all. The default driver in mesa, x11, and the kernel are all the best option for amdgpu right now.
Keep yourself updated on nixos-unstable. New driver developments will be coming in frequently on mesa and sometimes in linux-firmware.
Use boot.kernelPackages = pkgs.linuxPackages_latest;. The kernel side isn’t usually as important to be on the cutting edge of, because very little of the driver development happens kernel side most of the time. But each GPU has a minimum kernel version at least, and frankly it’s just best to stay on top of it just in case.
I knew I’d be dealing with a bit of issues but I was just surprised at the frequency that I’ve had them while it doesn’t seem like anyone else is having those same issues lol.
I am on nixos-unstable as well, just to note.
I probably should have mentioned the rest of my specs!
Date 2025-4-9
Uptime 33 mins
------------
OS NixOS 25.05 (Warbler) x86_64
Kernel Linux 6.14.1
Packages 2772 (nix-system), 916 (nix-user), 24 (flatpak-system), 11 (flatpak-user)
DE qtile
WM LG3D (X11)
Terminal kitty 0.41.1
Shell fish 4.0.1
------------
CPU AMD Ryzen 9 3900X (24) @ 5.26 GHz
GPU AMD RX 9070/9070 XT [Discrete]
Memory 13.57 GiB / 62.71 GiB (22%)
Disk (/) 1.21 TiB / 1.79 TiB (68%) - ext4
Just as an update, Hyprland without amdvlk still had the same issues. I’m still determining if using wayland at all is even possible on it yet or if it’s specific to Hyprland.
Performance does seem better overall without amdvlk though. Issues with Monster Hunter Wilds, for example, have since vanished. In that game’s case it was practically doubling the reported VRAM usage in-game without seemingly any issues coming of it, but it’s now down to expected values.
Like I said - I’ll keep updating here if anyone else is curious about this specific problem!
I’m going to lean on this particular issue coming down to mixed refresh rates.
My setup has two monitors:
a decent 144hz 1080p as primary
old dell 4:3 something or other at 60hz
qtile under wayland had the same issue as Hyprland did, so it ruled out the issue being specific to a DE for me. However, after simply disabling the secondary 4:3 the issue has not come up since (about 3 days or so now).
Like I said, I think it’s something stemming from mixing refresh rates due to that. I don’t have any others to test it with, but I’d think another 144hz display in conjunction with the current one I have would also be fine. Not to mention Xorg tends to display the same refresh rate across all displays regardless, thus cutting out the issue that way.
Anyways, I’ll leave it there lol. Hope this helps someone else out.
I actually have also been experiencing issues with the combo of a 9070XT and hyprland.
On stable: hyprland works fine, all 3 monitors with their varied refresh rates show no issues. Opening a vulkan app causes the entire system’s graphics to crash, forcing a reboot. I assume this is because Mesa 24.2.8 does not support the RX 9000 series
On unstable: hyprland refuses to launch from SDDM. I log in, my screens flicker, and then I’m back to SDDM as if nothing happened. Same story for the Wayland session of KDE. I did find that I could get into hyprland by switching to the TTY, logging in there, and then running hyprland, however then XWayland is completely broken for reasons beyond my debugging abilities.
The X sessions of the DEs I’ve tried seem to work fine however (KDE, and fluxbox). KDE is extremely unstable though, with constant notifications about services failing to the point the KDE doctor thing’s tray icon duplicates itself to the point it takes up the entire task bar.
I’m really just commenting here just in case anyone cleverer than me can come up with a useful idea based on all this. For now, I’m just sticking to the stable branch and just not launching any apps that use Vulkan. I’m hopeful things will be mostly fixed by 25.05
It’s been a bit but I wanted to mention that my best guess might not be 100% correct. I’ve had my display hang after trying updated drivers again last week.
On unstable: hyprland refuses to launch from SDDM. I log in, my screens flicker, and then I’m back to SDDM as if nothing happened. Same story for the Wayland session of KDE. I did find that I could get into hyprland by switching to the TTY, logging in there, and then running hyprland, however then XWayland is completely broken for reasons beyond my debugging abilities.
The X sessions of the DEs I’ve tried seem to work fine however (KDE, and fluxbox). KDE is extremely unstable though, with constant notifications about services failing to the point the KDE doctor thing’s tray icon duplicates itself to the point it takes up the entire task bar.
I’m by no means a guru but it’d be worth looking into output of dmesg and journalctl to get some clues as to what’s happening. As lame as it might sound, copying the debug output into some chatbot could also give some ideas on debugging it yourself. Though I am curious as to what’s going on of course - feel free to share whatever.
But your note about the same issue happening under KDE suggests it’s specifically wayland and not Hyprland having these problems. If it gets bad to a point I’m just glad I can go back to something with X11 and be fine. I’ve been using just my main display to get around it still.