-
-
Notifications
You must be signed in to change notification settings - Fork 880
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
Hyprland stutters a lot after an upgrade to Linux 6.11, adds an invisible "unknown" monitor between the two. #7971
Comments
unknown display is an nvidia bug.
dk, ask nv |
But finding two GPUs, too? Even though in the beginning, just one was reported to be found? Why has it always been working previously but after Linux 6.11, we need to use the |
sounds like an nvidia bug |
I figured that the I also don't think this is an NVIDIA problem since this is a Linux-generic thing, not related to NVIDIA or any other vendor. Linux exposes the device node from the DRM/tiny module:
The entire problem appears to be using this device node instead of the proper GPU device node for rending using Aquamarine. Hyprland shouldn't probably ever be using the framebuffer device nodes. It is easy to filter out the framebuffer devices. Here we could simply check for the device not being the "simple-framebuffer" implementation and otherwise skip it. This is wrong for any vendor for all the scenarios. It should be used when there is a direct purpose for it. It is wrong to require each and every user to manually and always disable it on their system when we know we can skip it because it is, either way, wrong to try working with it. If there really had been two different GPUs as it is claimed, for example, one integrated and one discrete, or three, then it would have made sense to remind the users to use the |
MRs welcome |
I have a laptop with only intel graphics and it also happened to me.
Also I have only 1 monitor, and it adds the second one "Unknown-1". FYI, my workaround for stutters is to disable(in config) this fake monitor. |
What is your Linux kernel version and when it started to happen? Does disabling the simple framebuffer help? Try adding this to your kernel cmd line before you boot it:
In my case forcing aquamarine to use the non-simple-framebuffer device fixed all the issues, I have none now just as before. This is why I am going to create a PR to ignore it. |
Yes, it helped. |
I can say prior to upgrading to 6.11 there were no issues, so I connect this to the changes there. Anyway, thanks for your report, I'll create the aquamarine patch this week. |
@iddm If you use anything build on electron, can you confirm this is an issue for you too? |
Already reported ? *
Regression?
Yes
System Info and Version
System/Version info
Description
I can run Hyprland, but I have a 2-hertz refresh rate after yesterday's ArchLinux upgrade and a weird fake monitor between my two. According to the logs, somehow, aquamarine detects two GPUs and creates the rendering backends for both of them; however, only one is enabled in BIOS (the discrete GPU):
Then, further in the logs it says that the "card0" becomes the primary DRM, while card1 being the NVIDIA one (the discrete GPU only enabled in BIOS). And the last problem is many-many messages of:
And other sorts of error messages. Just before yesterday's evening ArchLinux update everything was flawless, nothing except the new packages has changed.
UPD: found from here
Completely fixes the issue. What has happened and why? Did the new kernel suddenly start to report the GPU, which is disabled in BIOS, as enabled so that Aquamarine attempts to use it?
How to reproduce
Use the latest ArchLinux. It has two GPUs, one disabled in BIOS.
Crash reports, logs, images, videos
The log file is too big (10.2 MB) and is constantly growing, can't upload it here, I guess, so uploading as an archive.
log.tar.gz
Drm log:
dmesg.log
The text was updated successfully, but these errors were encountered: