False monitor resolution

Hey,

I’ve got a new 49” Monitor today.

When not using Qubes, the monitor is fantastic! But when using Qubes, well, the resolution is kinda bad? Doesn’t seem to be good but above all, the resolution is wrong? Normally it is 5220x1440, Qubes only recognizes it as 3840x1080 & with 87.0 Hz instead of 240 Hz.

I use an Nvidia 3070 & Nouveau.

What can I do? Does anyone have any ideas?

Something weird i already tried:

  1. Cvt 5220x1440
  2. Add new mode to xrandr with xrandr —newmode & xrandr —admone
  3. And calling xrandr —output

But Qubes seems to not take it? Nothing happens.
If i add the new resolution is is shown in the dom0 display settings, but when i change it & press apply nothing happens. The Display Settings App doesn’t seem to have an problem, but when i close it and re-enter it the resolution is again 3840x1080. And if i restart my pc, the new mode i added is completely deleted.

Thanks in advance.

Which OS exactly were you using?

Which version of Qubes did you install, 4.1 or 4.2? They both rely on Fedora in dom0, and for newest hardware might lack some firmware yet.

Did you try this?

It has a built-in smart-functionality (ps: i wont use this, gonna deactivate it once my setup is completed) that looks way more better and my windows work-pc also.

I am using 4.2.

Already tried two times to do this tutorial but it’s just not working…

I followed it step by step. The only difference is that I have an “nomodeset” in the grub configuration (based on my knowledge this isn’t the issue? But i am not sure; and i can’t try it without nomodeset because then nothing is working, i needed to set the kernel param already in the installation process).

The only difference the tutorial made is that before the tutorial “lsmod grep nvidia” resulted in 0 lines, after the tutorial in 1 line: “nvidia 62832640 0”.
Lsmod grep nouveau still results in the same number of lines:
“Nouveau 3506176 0
….

I guess nomodeset is an issue and you need to install proper drivers first.

What’s the kernel driver in use for your NVIDIA GPU? Check the output of this command in dom0:

lspci -k

Did you blacklist nouveau in grub?

Hm, what could lead to the error that occurs when nomodeset is not set? What’s could be a solution for this?
When i don’t set it the monitor goes black after grub ^^

Ehh? I am using the nvidia driver? Lol

Seems that it worked? Hm.

Do you have your monitor connected to your iGPU or dGPU (NVIDIA)?

Enable logging and check the errors:

Do you still have the same issue with black screen after grub without nomodeset?

My monitor is connected directly to my nvidia graphics card.

Hm, but withtout nomodeset i am not stuck ina boot loop, i just get a black screen where nothing happens…

Yes, i still have the same error

& my resolution is still not fixxed, even if nvidia drivers seem to be used. New resolution profiles i added are still thrown away.

To fix your issue with resolution you need to fix your issue with black screen when booting without nomodeset.
Try to enable logging to see the logs instead of black screen.

Sorry for the late reply, had to find some time (I already knew this gonna cost me some time).

I made an absolute dumb mistake: I wrote rd.driver.blacklist.nouveau instead of rd.driver.blacklist=nouveau…

After I was briefly happy because I had found the error, I wanted to start Qubes, but unfortunately I was disappointed: after I entered my Luks password, nothing happened. I tried it with two monitors: the new monitor goes into standby, the old monitor only shows an extremely distorted picture of Qubes.

I then played a bit with the kernel parameters and once it worked: I could log in normally after luks and also when I looked at the displays in Qubes everything was now recognized correctly: instead of “default” the name of my screen was recognized & also the correct refresh rate.

Then I restarted my pc and it didn’t work anymore. I can’t remember which kernel parameters caused it to work, I’m not sure if it had anything to do with the kernel parameters. I then tried various things and logged them:

The logging that you recommended didn’t show anything special. No errors. In the end I got input:sys-usb … and even then nothing happened.

In the GUI troubleshooting documentation from Qubes it said that you should try the kernel parameter “efi:no-rs”: that didn’t change anything either.

Since it has already worked once (whether it has to do with the kernel parameters or not), we at least know that the problem has nothing to do with the installation of the nvidia driver.

I don’t have any ideas.

Edit: i also tried qubes.skip_autostart; but this also didn’t make a difference

Run journalctl in dom0 terminal and search this string there (case sensitive):

Command line

Then find the one at the time when you’ve boot your Qubes OS and monitor worked for you.
Check the command line options in the string that you’ve found.
Or you can use this command:

journalctl | grep "Command line"

Unfortunately i couldn’t recreate it.

Are there any ways to get any (error) logs that are not shown here on why nvidia drivers are not loaded?

Check the logs in journalctl in dom0.
You can use this command to list the logs of all the boots:

journalctl --list-boots

Then use this command to view the logs for the boot where your monitor didn’t work and check the log:

journalctl -bX

Where X - boot index from the first column of journalctl --list-boots command.
E.g. for current boot it’s:

journalctl -b0

For previous boot:

journalctl -b-1

etc

Looked through a few logs. Not one error that is related to graphics / drivers / etc. (i think the only one was because of my mouse). The same with warnings.

This picture shows what i see on my “old” monitor:

this “error” were the last two logs that occured right before I restarted my pc:


What wonders me is: why is nouveau loaded, again?? Any why is the graphics glitching if nouveau is loaded? Nouveau should work normally.

This is my conf:


What’s the output of these commands in dom0 terminal?

cat /proc/cmdline
lspci -s 01:00.0 -k 

cat /proc/cmdline:
placeholder root/dev/mapper/qubes_dom0-root ro rd.luks.uuid={<_ dont want to type this_>} rd.lvm.lv=qubes_dom0/root rd.lvm.lv=qubes_dom0/swap plymouth.ignore.serial-consoles 6.6.21-1.qubes.fc37.x86_64 x86_64 rhgb quit rd.driver.blacklist=nouveau usbcore.authorized_default=0 nomodeset

lspci -s 01:00.0 -k:

01:00.0 VGA compatible controller: NVIDIA Corporation GA104 [GeForce RTX 3070] (rev a1)
Subsystem: CardExpert Technology Device 2484
Kernel modules: nouveau

I want to add that i currently boot with nomodeset (i manually write it in each time), because, obviously, my pc wouldn’t work otherwise.

You’re connecting your monitor to NVIDIA GPU, right?
Do you have proprietary NVIDIA drivers installed?
If no then how do you expect your NVIDIA GPU to work if you blacklist the only available driver - nouveau?

Try to boot without blacklisting nouveau and without nomodeset and then check this boot logs if it’ll fail.

I realized this & looked the cmd history up. I absolutely did do it (and I can absolutely remember it). I did every step in this tutorial: Nvidia proprietary driver installation and a few hours ago it worked once.

However, I did this tutorial again now. But even if lspci now shows that nvidia driver is there (which I am absolutely sure it did a few days ago too), i still get the same errors on every try.

I thought this tutorial may be good because it mentions some other additional commands: How to Install an Nvidia Driver | Qubes OS . However, once I did ./nvidia-xconfig & reboot my system now I get this error (even when using nomodeset):
“Failed to start lightdm.service - Light Display Manager”.

There should be more errors related to this prior this one.

Unfortunately not

Check the journalctl log, not the log during boot. There should be more info in journalctl.