You are not logged in.
Hi!
I'm running i3wm with the stable kernel on a 8700k (unsure if that's relevant) connected to a G9 OLED, and I'm having an issue when the system enters a sleep.
When I try to wake it with either mouse movement or keyboard pressing, it does something; my monitor lights up and it shows that it's trying the HDMI connection, but after a second or two shows no display output. I can switch to a TTY and it works just fine, if I log into the TTY and switch back to the i3 instance it sometimes work (call it 50/50) but resolution is lowered (normal being 5120x1440) and 60hz (from 240) according to nvidia-settings.
I've found some forum posts with a similar issue, but sadly none worked.
I'd be more than happy for really anything, and I'll of course provide any logs or information necessary :)
Cheers!
Last edited by Collbrothers (2024-08-23 19:07:12)
Offline
Please post your Xorg log, https://wiki.archlinux.org/title/Xorg#General (do not just grep for errors) after this happened and also check the xrandr output from the TTY when the output didn't resume.
DISPLAY=:0 xrandr -qCommon issues involve:
cable
cable
hdmi/hdcp sucks
cable
the output powers down and deregisters and it doesn't get re-enabled when showing up again, https://aur.archlinux.org/packages/x-on-resize - does this also happen when just entering the DPMS w/
xset dpms force off # or is this actually what you meant by "system enters a sleep" rather than S3/s2idle?did I mention the cable and that the hdmi handshake is intentionally fragile to prevent you from stealing valuable hollywood "content" like Madam Web?
esp. if you're using a compositor, https://wiki.archlinux.org/title/NVIDIA … er_suspend
the cable isn't just some passive copper, there're extra costs from the two little computers in the plugs that will break the connection if it cannot be established hard enough
https://wiki.archlinux.org/title/NVIDIA … de_setting - this will expose the EDID to the drm subsystem what might help out with the resolution/refresh issue
hdmi kinda works like tcp, there're packages, integrity bits and on failure the package is just resend and you get a tolerant signal across interferences, but that doesn't work during the time sensitive handshake that has never prevented anyone from coyping drm "protected" data which is the *only* reason why disney is losing money hand over fist and not because they piss on every IP they ever bought
Online
Hi Seth!
Xorg log https://0x0.st/XTsG.0.log
What I imagine is intresting is the following on 374.023:
ACPI: failed to connect to the ACPI event daemon; the daemon may not be running or the "AcpidSocketPath" X configuration option may not be set correctlyXrandr output from TTY: https://0x0.st/XcGY.txt
I've tried another cable, so either I'm really unlucky or we can rule that out :)
Offline
The ACPI message is common, that's not your problem.
[ 4.141] (==) Using config file: "/etc/X11/xorg.conf"Remove that file, it's pointless cruft that will just gloss over issues.
[ 4.918] (--) NVIDIA(0): DFP-0 (boot)
[ 4.992] (--) NVIDIA(GPU-0): Samsung Odyssey G93SC (DFP-0): connected
[ 4.992] (--) NVIDIA(GPU-0): Samsung Odyssey G93SC (DFP-0): Internal TMDS
[ 4.992] (--) NVIDIA(GPU-0): Samsung Odyssey G93SC (DFP-0): 42666.7 MHz maximum pixel clock
[ 5.659] (--) NVIDIA(GPU-0): Samsung Odyssey G93SC (DFP-0): connected
[ 5.659] (--) NVIDIA(GPU-0): Samsung Odyssey G93SC (DFP-0): Internal TMDS
[ 5.659] (--) NVIDIA(GPU-0): Samsung Odyssey G93SC (DFP-0): 42666.7 MHz maximum pixel clock
[ 5.732] (--) NVIDIA(GPU-0): Samsung Odyssey G93SC (DFP-0): connected
[ 5.732] (--) NVIDIA(GPU-0): Samsung Odyssey G93SC (DFP-0): Internal TMDS
[ 5.732] (--) NVIDIA(GPU-0): Samsung Odyssey G93SC (DFP-0): 42666.7 MHz maximum pixel clock
[ 373.802] (--) NVIDIA(GPU-0): Samsung Odyssey G93SC (DFP-0): connected
[ 373.802] (--) NVIDIA(GPU-0): Samsung Odyssey G93SC (DFP-0): Internal TMDS
[ 373.802] (--) NVIDIA(GPU-0): Samsung Odyssey G93SC (DFP-0): 42666.7 MHz maximum pixel clock
[ 10286.169] (--) NVIDIA(GPU-0): DFP-0: disconnected
[ 10286.169] (--) NVIDIA(GPU-0): DFP-0: Internal TMDS
[ 10286.169] (--) NVIDIA(GPU-0): DFP-0: 165.0 MHz maximum pixel clock
[ 10287.295] (--) NVIDIA(GPU-0): Samsung Odyssey G93SC (DFP-0): connected
[ 10287.295] (--) NVIDIA(GPU-0): Samsung Odyssey G93SC (DFP-0): Internal TMDS
[ 10287.295] (--) NVIDIA(GPU-0): Samsung Odyssey G93SC (DFP-0): 600.0 MHz maximum pixel clockThe output disconnected 2.8h after the server started (~12:45) and reconnected ~half a second later - this is 4 seconds before the log ends, so I guess it's the incident?
And I assume this only is DPMS, not an S3?
=> Enable https://wiki.archlinux.org/title/NVIDIA … de_setting - use the "nvidia_drm.modeset=1" kernel parameter (modprobe.conf won't do!) to
1. expose the EDID to the drm subsystem
2. get rid of the simpledrm device
Online
Hi again!
How am I meant to set the kernel parameter without a file in /etc/modprobe.d, you said "modprobe.conf won't do!)", little confused sorry, do I manually set it with modprobe each time?
Cheers ![]()
EDIT: Oh wait do I pass it in GRUB? Just wanna double confirm before I do anything, sorry
2nd EDIT: should I also pass the nvidia_drm.fbdev=1 parameter since my driver is v550.9? Again sorry, just wanna double check everything I do
Last edited by Collbrothers (2024-06-17 18:57:08)
Offline
THe fbdev parameter isn't relevant for this - the reports about it's impact have been somewhat mixed from "OMG it makes my GPU work" to "WFT I end up with a black screen"
You can try, if it causes problems you can edit the commandline by pressing "e" in grub.
Online
Alright I've added and confirmed that DRM is enabled via /sys/module/nvidia_drm/parameters/modeset, before that I also removed the xorg configuration file as you said. The fbdev parameter seems not worth it, atleast at the moment.
Problem now is the resolution is faulty, lower, adding the xorg config and all that via nvidia-settings has it working fine, but from my understanding that is supposed to be unnecessary with the kernel parameter enabled, or am I completely lost?
I'm sorry if I am misunderstanding or such, really appreciate the help nevertheless ![]()
Offline
Please remove the nvidia-settings generated xorg.conf again and post the resulting X11 log and "xrandr -q" output.
The interesting question though remains whether KMS support and the edid prevent the loss of the output - though the latter might also relate to the behavior absent an explicit config.
Online
Here you go:
Xrandr output: http://0x0.st/XT8L.txt
Xorg log: https://0x0.st/XT89.txt
I'll leave the pc so it goes into sleep and test it, I assume there is a command for it, but ill just do it this way for now
Offline
I'll leave the pc so it goes into sleep
xset dpms force offEdit, look here:
3840x1080 120.00*+ 240.00 60.00 3840x1080@120 is the default resolution.
for OUT in /sys/class/drm/card*; do echo $OUT; edid-decode $OUT/edid; echo "================="; doneYou'll need https://aur.archlinux.org/packages/edid-decode-git
You can alter the preferred mode w/ an nvidia metamode entry.
Section "Device"
Identifier "My GPU"
Driver "nvidia"
Option "MetaModes" "HDMI-0: 5120x1440_120 +0+0"
EndSectionshould do, but you can abuse nvidia-settings to generate a config w/ the desired metamode and copypaste that (just don't add the entire static server config)
Last edited by seth (2024-06-17 20:54:30)
Online
Alright 99% sure that the whole no output is working now, cheers!
Is that metamode entry supposed to be in a xorg.con file, if not, where?
Thanks ![]()
Offline
Preferably in sth. like /etc/X11/xorg.conf.d/20-nvidia.conf
Online
Works perfectly now! Thank you so much!
Marking it as solved asap
Offline
Hi again!
Some time ago I screwed up a partition which resulted in a dead system, so had to reflash and go back to square one.
I've done everything in this thread; DRM enabled, created a metamode entry etc, but the issue sadly remains.
I've lived with it for a bit now, but its getting way to annoying, now its even more annoying:
If the PC goes to "sleep" and I don't immediately show activity via mouse or keyboard etc it, as before, shows no source output. But I can interact with it, I am able to open a terminal and shutdown the computer blindly.
Now for the annoying part; I cant just reboot the computer, it doesnt display anything at all, not BIOS prompt, not GRUB, nothing, I have to:
1. Kill the power via the power supply,
2. Wait a bit, I assume to let the leftover electricity go on vacation or something (I'm not a electrical engineer, dont hate me)
3. Turn the power back on
And first then it shows a video output.
As before; I will provide any logs necessary, any help is appreciated, cheers ![]()
Offline
I can switch to a TTY and it works just fine, if I log into the TTY and switch back to the i3 instance it sometimes work
Is this then still true?
Post an xorg log to illustrate the status quo and instead of rebooting or pushing hte power button, try to re-plug the output (on either end) - does that do something?
Online
Yup TTY works, switching back to i3 is a gamble between it working fine or no display output, plugging the cable out and back in doesnt do anything, I've tried another cable again, no improvements.
Xorg log:
https://0x0.st/XyEn.log
This was a weird one; I wouldnt get a video output even after killing the power and waiting, tried rebooting the normal way and everything, the only reason I could think of why this happened is because I ran reboot in TTY, not directly killing the power via the psu? It was solved after I turned off and on my monitor.
Could this possibly be a monitor issue?
Cheers
Offline
[ 4.930] (II) NVIDIA(0): Validated MetaModes:
[ 4.930] (II) NVIDIA(0): "HDMI-0:5120x1440_240+0+0"
[ 4.930] (II) NVIDIA(0): Virtual screen size determined to be 5120 x 1440
…
[ 5.013] (II) NVIDIA(0): Setting mode "HDMI-0:5120x1440_240+0+0"The configlet from https://bbs.archlinux.org/viewtopic.php … 5#p2178305 isn't there?
Online
20-nvidia-conf exists in /etc/X11/xorg.conf.d and has the following content:
Section "Device"
Identifier "My GPU"
Driver "nvidia"
Option "MetaModes" "HDMI-0: 5120x1440_240 +0+0"
EndSectionNote that I changed 120 to 240 because I assumed it was referencing the refresh rate, but I can't find any documentation on it via https://download.nvidia.com/XFree86/Lin … nview.html.
I changed it back to 120, but nothing really changed on the whole issue.
So it exists? Or am I missing something? Sorry for any confusion, cheers
Offline
What if you go down to the default mode
Section "Device"
Identifier "My GPU"
Driver "nvidia"
Option "MetaModes" "HDMI-0: 3840x1080_120 +0+0"
EndSectionand what do xorg log and xrandr output ("DISPLAY=:0 xrandr -q" should work from a TTY even if you can't see anything on the X11 session) look like then?
Online
Xorg log in TTY with no display output on the X11 session, using the default metamode: https://0x0.st/XyhY.0.log
And xrandr output: https://0x0.st/Xyhv.txt
Offline
HDMI-0 disconnected primary 3840x1080+0+0 (normal left inverted right x axis y axis) 0mm x 0mm[ 3064.244] (--) NVIDIA(GPU-0): DFP-0: disconnected
[ 3064.244] (--) NVIDIA(GPU-0): DFP-0: Internal TMDS
[ 3064.244] (--) NVIDIA(GPU-0): DFP-0: 165.0 MHz maximum pixel clock
[ 3064.244] (--) NVIDIA(GPU-0):
---
[ 3065.483] (--) NVIDIA(GPU-0): Samsung Odyssey G93SC (DFP-0): connected
[ 3065.483] (--) NVIDIA(GPU-0): Samsung Odyssey G93SC (DFP-0): Internal TMDS
[ 3065.483] (--) NVIDIA(GPU-0): Samsung Odyssey G93SC (DFP-0): 42666.7 MHz maximum pixel clock
[ 3065.483] (--) NVIDIA(GPU-0):
---
[ 3072.702] (--) NVIDIA(GPU-0): DFP-0: disconnected
[ 3072.702] (--) NVIDIA(GPU-0): DFP-0: Internal TMDS
[ 3072.702] (--) NVIDIA(GPU-0): DFP-0: 165.0 MHz maximum pixel clock
[ 3072.702] (--) NVIDIA(GPU-0): Output disappears, re-appears 1s later and then 7s later is gone - then you switch the VT 3s later (the "device removed" lines)
Assuming it's a hiccup around the DPMS and the driver loses track (as you've output on the next TTY) you could try to force it being considered connected:
Section "Device"
Identifier "My GPU"
Driver "nvidia"
Option "MetaModes" "HDMI-0: 3840x1080_120 +0+0"
Option "ConnectedMonitor" "DFP-0"
EndSectionOnline
Sadly it didnt work:
Xorg log: https://0x0.st/XtIN.0.log
Xrandr log: https://0x0.st/XtIc.txt
Offline
Output remains "connected" but since you lose the EDID drops to VESA, defaults to XGA and that's not the active mode.
You could try to https://wiki.archlinux.org/title/Xrandr … esolutions or dump and inject the EDID regardless of the connection, https://wiki.archlinux.org/title/Kernel … s_and_EDID but if the handshake fails, the monitor will just ignore any signal.
For an initial test: "xrandr --output --HDMI-0 --auto" should™ activate the output and produce some signal (even if the monitor doesn't like it and complains that XGA isn't supported)
If not, that approach isn't gonna work.
Online
So that did not work (I think):
running exactly the command you sent gave cannot open the display, running it with display env to :0 threw "HDMI-0 output not found, ignoring"
Offline
Hold on, "xrandr -q" at this point still said "HDMI-0 connected"?
Did you remove "Option "ConnectedMonitor" "DFP-0"" again?
Online