You are not logged in.

#1 2020-12-03 01:47:01

MountainX
Member
Registered: 2016-02-08
Posts: 371

nvidia-drm.modeset=1 kernel parameter: black screen before Xorg

When I follow the Arch wiki steps exactly for installing the nvidia proprietary drivers with linux or linux-lts kernels, I get a completely black screen immediately after the first few lines of output early in the boot process. This is not related to the more common issue of Blackscreen_at_X_startup because I start X manually after console login. With this issue I never see a console login prompt.

What I have learned is that if I do not follow the wiki exactly, but instead just take a simple approach and install the required packages without any custom configuration (i.e., leave out the "nvidia-drm.modeset=1" kernel parameter, etc.), the issue goes away.

I'm curious if the wiki is possibly no longer correct. It says, "The proprietary NVIDIA driver supports KMS (since 364.12), which has to be manually enabled."

In my case, trying to enable it manually (following every step in the wiki exactly) results in this black screen (and none of the wiki's troubleshooting suggestions will resolve it). While not adding the kernel command line parameter or doing any of the other steps (such as specifying mkinitcpio modules) results in problem-free operation -- and I seem to have the necessary kernel modules loaded as shown by this:

# lsmod | grep nvidia_drm
nvidia_drm             61440  4
nvidia_modeset       1220608  14 nvidia_drm
drm_kms_helper        266240  1 nvidia_drm
drm                   585728  7 drm_kms_helper,nvidia_drm

Furthermore, the following checks are free of errors and I have not notice any runtime issues in normal desktop usage.

vdpauinfo
vainfo
systemctl --failed

I do see a few errors in , but I think these are harmless, as I don't use any of these modules (and I don't think I should be using them, right?)

[  7892.288] (EE) Failed to load module "nouveau" (module does not exist, 0)
[  7892.288] (EE) Failed to load module "nv" (module does not exist, 0)
[  7892.293] (EE) Failed to load module "fbdev" (module does not exist, 0)
[  7892.293] (EE) Failed to load module "vesa" (module does not exist, 0)

As far as I know, I do not have an issue right now. My questions are:
1. Is there anything else I should check?
2. Is there anything I am obviously doing wrong?
3. Am I correct in assuming that the wiki is wrong about needing the kernel command line parameter for nvidia dms?

My card is an nvidia GeForce GTX 1070 and I'm only using the proprietary drivers and standard kernels. I use pacman hooks. I don't use DKMS.

Offline

#2 2020-12-03 08:13:06

seth
Member
Registered: 2012-09-03
Posts: 52,199

Re: nvidia-drm.modeset=1 kernel parameter: black screen before Xorg

How black? Does the output loose the signal?
Do you get output if you switch the VT forth and back (ctrl+alt+f2/f1) after a while?
What's the otput of "xrandr -q" (in X, just to get us an idea over the supported modes of the output) - and is the output capable of a variable refresh rate?

Offline

#3 2020-12-03 17:37:33

MountainX
Member
Registered: 2016-02-08
Posts: 371

Re: nvidia-drm.modeset=1 kernel parameter: black screen before Xorg

seth wrote:

How black? Does the output loose the signal?

100% black. No cursor or anything else appears on the screen. I'm 99% sure it does not lose the signal, but with these monitors it is sometimes hard to tell...

seth wrote:

Do you get output if you switch the VT forth and back (ctrl+alt+f2/f1) after a while?

No, It is the same 100% black screen on all VT.

seth wrote:

is the output capable of a variable refresh rate?

I think so...

seth wrote:

What's the otput of "xrandr -q"

$ xrandr -q
Screen 0: minimum 8 x 8, current 9440 x 1440, maximum 32767 x 32767
DP-4.8 connected 3440x1440+3440+0 (normal left inverted right x axis y axis) 798mm x 335mm
   3440x1440     59.97*+  49.99
   2560x1440     59.95
   2560x1080     60.00
   1920x1080     60.00    60.00    59.94    50.00
   1720x1440     60.00
   1600x1200     60.00
   1280x1024     75.02    60.02
   1280x800      59.81
   1280x720      59.94    50.00
   1152x864      75.00
   1024x768      75.03    60.00
   800x600       75.00    60.32
   720x576       50.00
   720x480       59.94
   640x480       75.00    59.93    59.94
DP-0.8 connected primary 3440x1440+0+0 (normal left inverted right x axis y axis) 798mm x 335mm
   3440x1440     59.97*+  49.99
   2560x1440     59.95
   2560x1080     60.00
   1920x1080     60.00    60.00    59.94    50.00
   1720x1440     60.00
   1600x1200     60.00
   1280x1024     75.02    60.02
   1280x800      59.81
   1280x720      59.94    50.00
   1152x864      75.00
   1024x768      75.03    60.00
   800x600       75.00    60.32
   720x576       50.00
   720x480       59.94
   640x480       75.00    59.93    59.94
DVI-D-0 disconnected (normal left inverted right x axis y axis)
HDMI-0 disconnected (normal left inverted right x axis y axis)
DP-0 disconnected (normal left inverted right x axis y axis)
DP-1 disconnected (normal left inverted right x axis y axis)
DP-2 connected 2560x1440+6880+0 (normal left inverted right x axis y axis) 597mm x 336mm
   2560x1440     59.95*+ 143.91   120.00    99.95
   1920x1080    119.88    60.00    59.94    50.00
   1440x900      59.90
   1280x1440     59.91
   1280x1024     75.02    60.02
   1280x720      59.94    50.00
   1024x768     119.99    99.97    75.03    70.07    60.00
   800x600      119.97    99.66    75.00    72.19    60.32    56.25
   720x576       50.00
   720x480       59.94
   640x480      119.52    99.77    75.00    72.81    59.93    59.94
DP-3 disconnected (normal left inverted right x axis y axis)
DP-4 disconnected (normal left inverted right x axis y axis)
DP-5 disconnected (normal left inverted right x axis y axis)

Offline

#4 2020-12-03 21:29:57

seth
Member
Registered: 2012-09-03
Posts: 52,199

Re: nvidia-drm.modeset=1 kernel parameter: black screen before Xorg

So there're actually 3 outputs, 2x4k and 1x1440p…
Is the behavior the same when you remove the two 4k ones?
What's the output situation w/o the drm parameter? - Do you get visible output on all  three or just some of them?

Offline

#5 2020-12-03 21:45:42

MountainX
Member
Registered: 2016-02-08
Posts: 371

Re: nvidia-drm.modeset=1 kernel parameter: black screen before Xorg

seth wrote:

What's the output situation w/o the drm parameter? - Do you get visible output on all  three or just some of them?

Without the kernel drm parameter everything works. All 3 monitors operate at the proper resolution. I do not notice any problems at all.

seth wrote:

Is the behavior the same when you remove the two 4k ones?

I have not tried that, but I feel confident that the drm parameter will give the same black screen whether I have one, two or 3 monitors connected. That's because it happens in early boot up when the screens are in text mode. I see the first few lines of text output in the boot process, then it goes black and stays black. It doesn't even flash text or anything when I hit CTRL-ALT-DEL. It's black until it begins booting up. I see the bios screen, and just those few lines of text output when Arch is first starting. I think it is 4 lines of text.

Offline

#6 2020-12-03 22:45:52

seth
Member
Registered: 2012-09-03
Posts: 52,199

Re: nvidia-drm.modeset=1 kernel parameter: black screen before Xorg

It's when drm actually gets active.
The reason why ask is that yo'd usually have only one active output in the console or all outputs display the same image - what could be a problem in this setup (because of the high and different resolutions)

You could also try to operate all outputs at 1024x768, https://raw.githubusercontent.com/torva … modedb.rst

Offline

#7 2020-12-03 23:37:49

MountainX
Member
Registered: 2016-02-08
Posts: 371

Re: nvidia-drm.modeset=1 kernel parameter: black screen before Xorg

seth wrote:

It's when drm actually gets active.
The reason why ask is that yo'd usually have only one active output in the console or all outputs display the same image - what could be a problem in this setup (because of the high and different resolutions)

Yes, only my middle display is active at this early stage.

seth wrote:

You could also try to operate all outputs at 1024x768, https://raw.githubusercontent.com/torva … modedb.rst

That link led me to another forum topic where you helped someone out: https://bbs.archlinux.org/viewtopic.php?id=258150
That person's issue sounds a bit like mine, but the thread ended without a solution.
I could not find any good examples of using modedb with nvidia proprietary drivers. Can you give an example of how I would do this? I use systemd-boot. I can make and test various boot loader entry configs with different parameters if you suggest different things for me to test.

Offline

#8 2020-12-03 23:45:16

MountainX
Member
Registered: 2016-02-08
Posts: 371

Re: nvidia-drm.modeset=1 kernel parameter: black screen before Xorg

Also, I installed get-edid. But it did not produce any results.

# get-edid
This is read-edid version 3.0.2. Prepare for some fun.
Attempting to use i2c interface
Looks like no busses have an EDID. Sorry!
Attempting to use the classical VBE interface

        Performing real mode VBE call
        Interrupt 0x10 ax=0x4f00 bx=0x0 cx=0x0
        Function supported
        Call successful

        VBE version 300
        VBE string at 0x11100 "NVIDIA"

VBE/DDC service about to be called
        Report DDC capabilities

        Performing real mode VBE call
        Interrupt 0x10 ax=0x4f15 bx=0x0 cx=0x0
        Function supported
        Call successful

        Monitor and video card combination does not support DDC1 transfers
        Monitor and video card combination does not support DDC2 transfers
        0 seconds per 128 byte EDID block transfer
        Screen is not blanked during DDC transfer

Reading next EDID block

VBE/DDC service about to be called
        Read EDID

        Performing real mode VBE call
        Interrupt 0x10 ax=0x4f15 bx=0x1 cx=0x0
        Function supported
        Call failed

The EDID data should not be trusted as the VBE call failed
Error: output block unchanged
I'm sorry nothing was successful. Maybe try some other arguments

Offline

#9 2020-12-04 08:16:27

seth
Member
Registered: 2012-09-03
Posts: 52,199

Re: nvidia-drm.modeset=1 kernel parameter: black screen before Xorg

video=DP-4.8:1024x768e video=DP-0.8:d video=DP-2:d

should™ run the middle (according to your xrandr) output as XGA and explicitly disable the other two outputs (at the console, this has no relevance for X11)

Offline

#10 2020-12-04 12:54:41

MountainX
Member
Registered: 2016-02-08
Posts: 371

Re: nvidia-drm.modeset=1 kernel parameter: black screen before Xorg

seth wrote:
video=DP-4.8:1024x768e video=DP-0.8:d video=DP-2:d

so that goes directly onto the kernel command line without quotes or anything else?

seth wrote:

should™

:-)

Offline

#11 2020-12-04 12:58:56

seth
Member
Registered: 2012-09-03
Posts: 52,199

Re: nvidia-drm.modeset=1 kernel parameter: black screen before Xorg

Well, you might have to prepend a space to keep it apart from other parameters tongue

https://www.youtube.com/watch?v=5RyYrs5tu60

Offline

Board footer

Powered by FluxBB