Black screen at startup after installing Nvidia driver

Hi!

I am using Debian 12 and I needed to install DisplayLink driver from Synaptics to connect and use my docking station (to add external monitors). To simplify the installation, I used this script: https://github.com/AdnanHodzic/displaylink-debian

Bug: after selecting Linux on Grub, my screen becomes black and I cannot see anything even when accessing tty session (I know I can access it because I can blindly shutdown my linux).

Here are the steps that led to the problem:

  • Launch the script from: https://github.com/AdnanHodzic/displaylink-debian
  • My docking station was still not recognized by Linux. Therefore, I decided to install Nvidia driver and downloaded NVIDIA-Linux-x86_64-470.256.02.run.
  • Stop lightdm
  • Launch NVIDIA-Linux-x86_64-470.256.02.run
    • The script added config files to override Nouveau driver
      • Launch update-initramfs to update the config.
  • Re-launch NVIDIA-Linux-x86_64-470.256.02.run:
    • DKMS: I selected “Allow” to automatically build a new module
    • Warning: unable to find a suitable destination to install 32-bit compatibility libraries
    • Warning: Unable to determine the path to install the libglvnd EGL vendor library config files. Check that you have pkg-config and the libglvnd development libraries installed, or specify a path with --glvnd-egl-config-path.
  • Select Discrete Graphics on my Lenovo bios instead of Hybrid Graphics because I have an integrated Intel graphic card and a GeForce GTX 1650 Ti Mobile.

What should I do?

Thanks!


Below are some outputs:

# uname -a
Linux Nomad 6.1.0-20-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.85-1 (2024-04-11) x86_64 GNU/Linux
# lspci | grep -i vga
01:00.0 VGA compatible controller: NVIDIA Corporation TU117M [GeForce GTX 1650 Ti Mobile] (rev a1)
# lshw -c display
  *-display
       description: VGA compatible controller
       product: TU117M [GeForce GTX 1650 Ti Mobile]
       vendor: NVIDIA Corporation
       physical id: 0
       bus info: pci@0000:01:00.0
       version: a1
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress vga_controller bus_master cap_list rom
       configuration: driver=nvidia latency=0
       resources: irq:16 memory:ed000000-edffffff memory:c0000000-cfffffff memory:d0000000-d1ffffff ioport:3000(size=128) memory:ee080000-ee0fffff
  *-graphics
       product: EFI VGA
       physical id: 2
       logical name: /dev/fb0
       capabilities: fb
       configuration: depth=32 resolution=3840,2160
# cat /var/log/Xorg.0.log | grep -iE "(WW|EE)"
[    22.197] Current Operating System: Linux Nomad 6.1.0-20-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.85-1 (2024-04-11) x86_64
[    22.197] xorg-server 2:21.1.7-3+deb12u7 (https://www.debian.org/support) 
	(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[    22.199] (**) |-->Screen "Screen0" (0)
[    22.201] (WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist.
[    22.202] (WW) Hotplugging is on, devices using drivers 'kbd', 'mouse' or 'vmmouse' will be disabled.
[    22.202] (WW) Disabling Keyboard0
[    22.202] (WW) Disabling Mouse0
[    22.204] (II) systemd-logind: took control of session /org/freedesktop/login1/session/c1
[    22.205] (II) xfree86: Adding drm device (/dev/dri/card4)
[    22.206] (II) xfree86: Adding drm device (/dev/dri/card0)
[    22.207] (II) xfree86: Adding drm device (/dev/dri/card1)
[    22.208] (II) xfree86: Adding drm device (/dev/dri/card2)
[    22.209] (II) xfree86: Adding drm device (/dev/dri/card3)
[    23.302] (II) NVIDIA(0): Virtual screen size determined to be 3840 x 2160
[    23.319] (--) NVIDIA(0): DPI set to (286, 288); computed from "UseEdidDpi" X config
[    23.328] (II) NVIDIA(0):     details, please see the "ConnectToAcpid" and
[    25.968] (II) Initializing extension MIT-SCREEN-SAVER
[    25.969] (II) GLX: Another vendor is already registered for screen 0
[    25.969] (II) Initializing extension XFree86-VidModeExtension
[    25.969] (II) Initializing extension XFree86-DGA
[    25.969] (II) Initializing extension XFree86-DRI
[    26.031] (II) This device may have been added with another device file.
[    26.032] (II) config/udev: Adding input device Sleep Button (/dev/input/event1)
[    26.032] (**) Sleep Button: Applying InputClass "libinput keyboard catchall"
[    26.032] (II) Using input driver 'libinput' for 'Sleep Button'
[    26.032] (**) Sleep Button: always reports core events
[    26.033] (II) event1  - Sleep Button: is tagged by udev as: Keyboard
[    26.033] (II) event1  - Sleep Button: device is a keyboard
[    26.033] (II) event1  - Sleep Button: device removed
[    26.033] (II) XINPUT: Adding extended input device "Sleep Button" (type: KEYBOARD, id 8)
[    26.033] (II) event1  - Sleep Button: is tagged by udev as: Keyboard
[    26.033] (II) event1  - Sleep Button: device is a keyboard
[    26.034] (II) This device may have been added with another device file.
[    26.034] (II) This device may have been added with another device file.
[    26.034] (II) This device may have been added with another device file.
[    26.035] (II) This device may have been added with another device file.
[    26.218] (**) Wacom Pen and multitouch sensor Pen stylus: (accel) keeping acceleration scheme 1
[    26.220] (II) This device may have been added with another device file.
[    26.222] (**) Wacom Pen and multitouch sensor Finger: Applying InputClass "libinput touchscreen catchall"
[    26.222] (**) Wacom Pen and multitouch sensor Finger: Applying InputClass "Wacom USB touchscreen class"
[    26.222] (**) Wacom Pen and multitouch sensor Finger: Applying InputClass "Wacom touchscreen class"
[    26.226] (**) Wacom Pen and multitouch sensor Finger touch: (accel) keeping acceleration scheme 1
[    26.228] (II) This device may have been added with another device file.
[    26.252] (II) This device may have been added with another device file.
[    26.275] (II) This device may have been added with another device file.
[    26.283] (II) This device may have been added with another device file.
[    26.287] (II) This device may have been added with another device file.
[    26.293] (**) Wacom Pen and multitouch sensor Pen eraser: (accel) keeping acceleration scheme 1
# lsmod | grep nvidia
nvidia_drm             73728  0
nvidia_modeset       1204224  1 nvidia_drm
nvidia              35598336  1 nvidia_modeset
drm_kms_helper        208896  5 drm_display_helper,evdi,nvidia_drm,i915,nouveau
drm                   614400  12 drm_kms_helper,drm_display_helper,evdi,nvidia,drm_buddy,thinkpad_acpi,drm_ttm_helper,nvidia_drm,i915,ttm,nouveau
video                  65536  4 thinkpad_acpi,i915,nouveau,nvidia_modeset
# X -version
X.Org X Server 1.21.1.7
X Protocol Version 11, Revision 0
Current Operating System: Linux Nomad 6.1.0-20-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.85-1 (2024-04-11) x86_64
Kernel command line: BOOT_IMAGE=/vmlinuz-6.1.0-20-amd64 root=/dev/mapper/debian_crypt_vg-root ro single
xorg-server 2:21.1.7-3+deb12u7 (https://www.debian.org/support) 
Current version of pixman: 0.42.2
	Before reporting problems, check http://wiki.x.org
	to make sure that you have the latest version.
# dmesg | grep -iE "error|fail|nvidia|amd|intel"
[    0.000000] Linux version 6.1.0-20-amd64 (debian-kernel@lists.debian.org) (gcc-12 (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40) #1 SMP PREEMPT_DYNAMIC Debian 6.1.85-1 (2024-04-11)
[    0.011587] RAMDISK: [mem 0x2d741000-0x32b97fff]
[    0.027358] Unknown kernel command line parameters "single BOOT_IMAGE=/vmlinuz-6.1.0-20-amd64", will be passed to user space.
[    0.104028] smpboot: CPU0: Intel(R) Core(TM) i9-10885H CPU @ 2.40GHz (family: 0x6, model: 0xa5, stepping: 0x2)
[    0.104028] Performance Events: PEBS fmt3+, Skylake events, 32-deep LBR, full-width counters, Intel PMU driver.
[    1.276924] AMD-Vi: AMD IOMMUv2 functionality not available on this system - This is not a bug.
[    1.282671] intel_pstate: Intel P-state driver initializing
[    1.283714] intel_pstate: HWP enabled
[    1.483771]     BOOT_IMAGE=/vmlinuz-6.1.0-20-amd64
[    1.962296] usb usb1: Manufacturer: Linux 6.1.0-20-amd64 xhci-hcd
[    1.993659] usb usb2: Manufacturer: Linux 6.1.0-20-amd64 xhci-hcd
[    2.034276] usb usb3: Manufacturer: Linux 6.1.0-20-amd64 xhci-hcd
[    2.055598] usb usb4: Manufacturer: Linux 6.1.0-20-amd64 xhci-hcd
[   22.035466] Btrfs loaded, crc32c=crc32c-intel, zoned=yes, fsverity=yes
[   23.809388] intel_pmc_core INT33A1:00:  initialized
[   23.810183] intel_pch_thermal 0000:00:12.0: enabling device (0000 -> 0002)
[   23.841316] evdi: module verification failed: signature and/or required key missing - tainting kernel
[   23.993263] iTCO_wdt iTCO_wdt: Found a Intel PCH TCO device (Version=6, TCOBASE=0x0400)
[   24.037875] caller snb_uncore_imc_init_box+0x80/0xd0 [intel_uncore] mapping multiple BARs
[   24.224691] Intel(R) Wireless WiFi driver for Linux
[   24.233243] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100
[   24.235186] snd_hda_intel 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver
[   24.235598] snd_hda_intel 0000:01:00.1: enabling device (0000 -> 0002)
[   24.236326] iwlwifi 0000:00:14.3: firmware: failed to load iwl-debug-yoyo.bin (-2)
[   24.236356] iwlwifi 0000:00:14.3: firmware: failed to load iwl-debug-yoyo.bin (-2)
[   24.237354] snd_hda_intel 0000:01:00.1: Disabling MSI
[   24.237368] snd_hda_intel 0000:01:00.1: Handle vga_switcheroo audio client
[   24.271889] input: HDA NVidia HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card0/input20
[   24.272002] input: HDA NVidia HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card0/input21
[   24.272164] input: HDA NVidia HDMI/DP,pcm=8 as /devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card0/input22
[   24.272367] input: HDA NVidia HDMI/DP,pcm=9 as /devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card0/input23
[   24.353808] bluetooth hci0: firmware: direct-loading firmware intel/ibt-19-0-4.sfi
[   24.366836] Bluetooth: hci0: Found device firmware: intel/ibt-19-0-4.sfi
[   24.369945] nvidia: module license 'NVIDIA' taints kernel.
[   24.416478] audit: type=1400 audit(1721573322.578:6): apparmor="STATUS" operation="profile_load" profile="unconfined" name="nvidia_modprobe" pid=978 comm="apparmor_parser"
[   24.416487] audit: type=1400 audit(1721573322.578:7): apparmor="STATUS" operation="profile_load" profile="unconfined" name="nvidia_modprobe//kmod" pid=978 comm="apparmor_parser"
[   24.578820] intel_rapl_common: Found RAPL domain package
[   24.581628] intel_rapl_common: Found RAPL domain dram
[   24.587115] intel_rapl_common: Found RAPL domain package
[   24.587118] intel_rapl_common: Found RAPL domain core
[   24.587121] intel_rapl_common: Found RAPL domain dram
[   24.587123] intel_rapl_common: Found RAPL domain psys
[   24.719231] nvidia-nvlink: Nvlink Core is being initialized, major device number 236
[   24.722482] nvidia 0000:01:00.0: enabling device (0006 -> 0007)
[   24.728302] nvidia 0000:01:00.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=none:owns=none
[   24.740773] iwlwifi 0000:00:14.3: Detected Intel(R) Wi-Fi 6 AX201 160MHz, REV=0x351
[   24.744557] thermal thermal_zone12: failed to read out thermal zone (-61)
[   24.774018] NVRM: loading NVIDIA UNIX x86_64 Kernel Module  470.256.02  Thu May  2 14:37:44 UTC 2024
[   24.840882] nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms  470.256.02  Thu May  2 14:50:40 UTC 2024
[   24.843873] sof-audio-pci-intel-cnl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100
[   24.846817] sof-audio-pci-intel-cnl 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver
[   24.849300] sof-audio-pci-intel-cnl 0000:00:1f.3: enabling device (0004 -> 0006)
[   24.852657] [drm] [nvidia-drm] [GPU ID 0x00000100] Loading driver
[   24.853371] sof-audio-pci-intel-cnl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if 0x040100
[   24.855024] [drm] Initialized nvidia-drm 0.0.0 20160202 for 0000:01:00.0 on minor 4
[   24.857541] sof-audio-pci-intel-cnl 0000:00:1f.3: init of i915 and HDMI codec failed
[   24.864175] sof-audio-pci-intel-cnl 0000:00:1f.3: use msi interrupt mode
[   24.960816] sof-audio-pci-intel-cnl 0000:00:1f.3: hda codecs found, mask 1
[   24.964782] sof-audio-pci-intel-cnl 0000:00:1f.3: using HDA machine driver skl_hda_dsp_generic now
[   24.967867] sof-audio-pci-intel-cnl 0000:00:1f.3: DMICs detected in NHLT tables: 2
[   24.973872] sof-audio-pci-intel-cnl 0000:00:1f.3: firmware: direct-loading firmware intel/sof/sof-cml.ri
[   24.977059] sof-audio-pci-intel-cnl 0000:00:1f.3: Firmware info: version 2:2:0-57864
[   24.980051] sof-audio-pci-intel-cnl 0000:00:1f.3: Firmware: ABI 3:22:1 Kernel ABI 3:23:0
[   24.983273] sof-audio-pci-intel-cnl 0000:00:1f.3: unknown sof_ext_man header type 3 size 0x30
[   25.095015] sof-audio-pci-intel-cnl 0000:00:1f.3: Firmware info: version 2:2:0-57864
[   25.097051] sof-audio-pci-intel-cnl 0000:00:1f.3: Firmware: ABI 3:22:1 Kernel ABI 3:23:0
[   25.109827] sof-audio-pci-intel-cnl 0000:00:1f.3: firmware: direct-loading firmware intel/sof-tplg/sof-hda-generic-2ch.tplg
[   25.112186] sof-audio-pci-intel-cnl 0000:00:1f.3: Topology: ABI 3:22:1 Kernel ABI 3:23:0
[   26.175058] bluetooth hci0: firmware: direct-loading firmware intel/ibt-19-0-4.ddc
[   26.176691] Bluetooth: hci0: Found Intel DDC parameters: intel/ibt-19-0-4.ddc
[   26.179751] Bluetooth: hci0: Applying Intel DDC parameters completed