In an earlier post, I already wrote about how to install the proprietary video driver on Fedora. In a brief update I suggested to change the acpi_sleep kernel option to accomplish proper display wake-up from standby. Unfortunately, that solution doesn’t work reliably in my experience. Today I found a solution that seems to successfully work around the problem of the black screen by waking up the screen “manually”.
Gernot Walzl wrote a “nasty workaround” (quoting himself) in the form of the following script:
#!/bin/sh # nvidia_dpms_fix.sh # 2011-06-12 # by Gernot WALZL # nasty workaround for nvidia drivers to resume from dpms off/suspend export DISPLAY=:0 getXauthority () { export XAUTHORITY=$(ps -C X -f | grep "$DISPLAY" \ | sed -n 's/.* -auth \([^ ]*\).*/\1/p') } handle_line () { if echo "$1" | grep -e "(EE) NVIDIA.* DisplayPort link training failed" \ > /dev/null; then getXauthority xset dpms force on fi } tail --follow=name /var/log/Xorg.0.log --retry --lines=1 2> /dev/null \ | while read line; do handle_line "$line" done
To actually make this do its job, I copied it into /usr/local/bin, made it executable and created an autostart entry for GNOME 3 by saving the following lines under ~/.config/autostart/nvidia_dpms_fix.sh.desktop
[Desktop Entry] Type=Application Exec=/usr/local/bin/nvidia_dpms_fix.sh Hidden=false X-GNOME-Autostart-enabled=true Name=NVidia DPMS fix Comment=Wakes up the display properly
I believe the problem that is being worked around is indicated by a line in the Xorg.0.log:
(WW) NVIDIA(GPU-0): AUO (DFP-3): Failed to set DisplayPort power state
Although I could only test this on my machine (HP EliteBook 8440p), with some luck this works for all cases where a similar log message is found.









