Black Screen on Boot | Lenovo Legion | Triple Boot

I’m having the same problem on a Lenovo Legion laptop when booting with discrete graphics. Thanks for the workarounds. Did you ever find any proper solution?

Are you able to login ? If so can you post the information of:

inxi -Fzxx in preformatted text

2024-05-06_12-15-49_Preformatted_Text

@lumiere I wasn’t able to find a proper solution. I think this seems to be an issue when you have a dGPU and an iGPU, not sure.

For now, I have changed the boot command in /etc/default/grub to not include the rhgb quiet option. The effect of doing this is that you will see boot messages during startup.

@hamrheadcorvette @chiragb Sorry for the late reply.

Inxi
System:
  Kernel: 6.9.12-200.fc40.x86_64 arch: x86_64 bits: 64 compiler: gcc
    v: 2.41-37.fc40
  Desktop: KDE Plasma v: 6.1.3 tk: Qt v: N/A wm: kwin_wayland dm: SDDM
    Distro: Fedora Linux 40 (Forty)
Machine:
  Type: Laptop System: LENOVO product: 82Y9 v: Legion Slim 5 16APH8
    serial: <superuser required> Chassis: type: 10 v: Legion Slim 5 16APH8
    serial: <superuser required>
  Mobo: LENOVO model: LNVNB161216 v: SDK0T76463 WIN
    serial: <superuser required> part-nu: LENOVO_MT_82Y9_BU_idea_FM_Legion Slim
    5 16APH8 UEFI: LENOVO v: M3CN42WW date: 01/11/2024
Battery:
  ID-1: BAT1 charge: 71.6 Wh (87.9%) condition: 81.5/80.0 Wh (101.9%)
    volts: 16.1 min: 15.4 model: Sunwoda L22D4PC2 serial: <filter>
    status: discharging
CPU:
  Info: 8-core model: AMD Ryzen 7 7840HS w/ Radeon 780M Graphics bits: 64
    type: MT MCP arch: Zen 4 rev: 1 cache: L1: 512 KiB L2: 8 MiB L3: 16 MiB
  Speed (MHz): avg: 1725 high: 3897 min/max: 400/5137 cores: 1: 3682 2: 400
    3: 400 4: 400 5: 3897 6: 3193 7: 400 8: 400 9: 3402 10: 400 11: 400 12: 3505
    13: 3071 14: 400 15: 400 16: 3253 bogomips: 121379
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Graphics:
  Device-1: NVIDIA AD106M [GeForce RTX 4070 Max-Q / Mobile] vendor: Lenovo
    driver: nvidia v: 555.58.02 arch: Lovelace pcie: speed: 16 GT/s lanes: 8
    ports: active: none off: DP-9 empty: HDMI-A-1,eDP-2 bus-ID: 01:00.0
    chip-ID: 10de:2860
  Device-2: AMD Phoenix1 vendor: Lenovo driver: amdgpu v: kernel
    arch: RDNA-3 pcie: speed: 16 GT/s lanes: 16 ports: active: eDP-1 empty: DP-1,
    DP-2, DP-3, DP-4, DP-5, DP-6, DP-7, DP-8, Writeback-1 bus-ID: 06:00.0
    chip-ID: 1002:15bf temp: 41.0 C
  Device-3: Luxvisions Innotech Integrated Camera driver: uvcvideo type: USB
    rev: 2.0 speed: 480 Mb/s lanes: 1 bus-ID: 1-3:3 chip-ID: 30c9:00ac
  Display: wayland server: X.org v: 1.20.14 with: Xwayland v: 24.1.1
    compositor: kwin_wayland driver: X: loaded: amdgpu,nvidia
    unloaded: fbdev,modesetting,nouveau,vesa alternate: nv dri: radeonsi
    gpu: nvidia,amdgpu d-rect: 4096x2432 display-ID: 0
  Monitor-1: DP-9 pos: bottom-r res: 2048x1152 size: N/A
  Monitor-2: eDP-1 pos: primary,top-left res: 2048x1280 size: N/A
  API: EGL v: 1.5 platforms: device: 0 drv: nvidia device: 1 drv: radeonsi
    device: 3 drv: swrast gbm: drv: kms_swrast surfaceless: drv: nvidia wayland:
    drv: radeonsi x11: drv: radeonsi inactive: device-2
  API: OpenGL v: 4.6.0 compat-v: 4.5 vendor: amd mesa v: 24.1.5 glx-v: 1.4
    direct-render: yes renderer: AMD Radeon 780M (radeonsi gfx1103_r1 LLVM
    18.1.6 DRM 3.57 6.9.12-200.fc40.x86_64) device-ID: 1002:15bf
    display-ID: :0.0
  API: Vulkan v: 1.3.283 surfaces: xcb,xlib,wayland device: 0
    type: integrated-gpu driver: N/A device-ID: 1002:15bf device: 1
    type: discrete-gpu driver: N/A device-ID: 10de:2860 device: 2 type: cpu
    driver: N/A device-ID: 10005:0000
Audio:
  Device-1: NVIDIA AD106M High Definition Audio vendor: Lenovo
    driver: snd_hda_intel v: kernel pcie: speed: 16 GT/s lanes: 8
    bus-ID: 01:00.1 chip-ID: 10de:22bd
  Device-2: AMD Rembrandt Radeon High Definition Audio vendor: Lenovo
    driver: snd_hda_intel v: kernel pcie: speed: 16 GT/s lanes: 16
    bus-ID: 06:00.1 chip-ID: 1002:1640
  Device-3: AMD ACP/ACP3X/ACP6x Audio Coprocessor driver: snd_pci_ps
    v: kernel pcie: speed: 16 GT/s lanes: 16 bus-ID: 06:00.5 chip-ID: 1022:15e2
  Device-4: AMD Family 17h/19h HD Audio vendor: Lenovo driver: snd_hda_intel
    v: kernel pcie: speed: 16 GT/s lanes: 16 bus-ID: 06:00.6 chip-ID: 1022:15e3
  API: ALSA v: k6.9.12-200.fc40.x86_64 status: kernel-api
  Server-1: PipeWire v: 1.0.7 status: active with: 1: pipewire-pulse
    status: active 2: wireplumber status: active 3: pipewire-alsa type: plugin
    4: pw-jack type: plugin
Network:
  Device-1: Realtek RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet
    vendor: Lenovo driver: r8169 v: kernel pcie: speed: 2.5 GT/s lanes: 1
    port: 2000 bus-ID: 02:00.0 chip-ID: 10ec:8168
  IF: enp2s0 state: down mac: <filter>
  Device-2: MEDIATEK MT7922 802.11ax PCI Express Wireless Network Adapter
    vendor: Lenovo driver: mt7921e v: kernel pcie: speed: 5 GT/s lanes: 1
    bus-ID: 03:00.0 chip-ID: 14c3:0616
  IF: wlo1 state: up mac: <filter>
  IF-ID-1: virbr0 state: down mac: <filter>
  IF-ID-2: virbr1 state: down mac: <filter>
Bluetooth:
  Device-1: Foxconn / Hon Hai Bluetooth 5.2 Adapter [MediaTek MT7922]
    driver: btusb v: 0.8 type: USB rev: 2.1 speed: 480 Mb/s lanes: 1
    bus-ID: 1-4:5 chip-ID: 0489:e0d8
  Report: btmgmt ID: hci0 rfk-id: 2 state: down bt-service: enabled,running
    rfk-block: hardware: no software: yes address: <filter> bt-v: 5.2 lmp-v: 11
Drives:
  Local Storage: total: 2.29 TiB used: 846.54 GiB (36.2%)
  ID-1: /dev/nvme0n1 vendor: SK Hynix model: HFS512GEJ9X115N
    size: 476.94 GiB speed: 63.2 Gb/s lanes: 4 serial: <filter> temp: 43.9 C
  ID-2: /dev/nvme1n1 vendor: Crucial model: CT2000T500SSD8 size: 1.82 TiB
    speed: 63.2 Gb/s lanes: 4 serial: <filter> temp: 34.9 C
Partition:
  ID-1: / size: 1.82 TiB used: 846.53 GiB (45.5%) fs: btrfs dev: /dev/dm-0
    mapped: luks-ebcc1ffd-a52a-4e94-898d-8ff898995f38
  ID-2: /boot/efi size: 3.99 GiB used: 7.4 MiB (0.2%) fs: vfat
    dev: /dev/nvme1n1p1
  ID-3: /home size: 1.82 TiB used: 846.53 GiB (45.5%) fs: btrfs
    dev: /dev/dm-0 mapped: luks-ebcc1ffd-a52a-4e94-898d-8ff898995f38
  ID-4: /opt size: 1.82 TiB used: 846.53 GiB (45.5%) fs: btrfs
    dev: /dev/dm-0 mapped: luks-ebcc1ffd-a52a-4e94-898d-8ff898995f38
  ID-5: /var/log size: 1.82 TiB used: 846.53 GiB (45.5%) fs: btrfs
    dev: /dev/dm-0 mapped: luks-ebcc1ffd-a52a-4e94-898d-8ff898995f38
  ID-6: /var/tmp size: 1.82 TiB used: 846.53 GiB (45.5%) fs: btrfs
    dev: /dev/dm-0 mapped: luks-ebcc1ffd-a52a-4e94-898d-8ff898995f38
Swap:
  ID-1: swap-1 type: zram size: 8 GiB used: 0 KiB (0.0%) priority: 100
    dev: /dev/zram0
Sensors:
  System Temperatures: cpu: 47.2 C mobo: 38.0 C
  Fan Speeds (rpm): N/A
Info:
  Memory: total: 32 GiB note: est. available: 30.53 GiB used: 5.74 GiB (18.8%)
  Processes: 413 Power: uptime: 45m wakeups: 0 Init: systemd v: 255
    target: graphical (5) default: graphical
  Packages: pm: flatpak pkgs: 44 Compilers: gcc: 14.1.1 Shell: Bash
    v: 5.2.26 running-in: konsole inxi: 3.3.34

I am able to login normally when I set graphics to “Dynamic” in bios, with the plymouth luks password theme showing up.

When I switch to “Discrete” graphics, the plymouth spinner briefly flashes on screen, but then it’s just black. One of the workarounds that @chiragb mentioned worked: plugging in my external display via the igpu usb-c displayport instead of the dgpu usb-c displayport (when the screen was black) and then the plymouth password screen showed up on the external monitor.

I had previously tried booting with discrete graphics without any external monitor plugged in and it would lead to the exact same behavior: plymouth spinner flashes on screen for a moment, then black screen.

Removing the rhgb quiet option from the kernel parameters didnt seem to work for me. When I booted without it, the “asking for password” line seemed to not be taking any input and just had a blinking underscore that sometimes lagged a bit whenever I pressed a key (so it was noticing keypresses). This was after I had set the plymouth theme to “details,” though, so I might try it again without that.

In none of the cases above is the system frozen either, I can ctrl alt delete and restart.

For the record, I have been able to login normally with discrete graphics before, so this probably changed with an nvidia driver update (maybe 555 or 550?).

I’ve been running dynamic graphics for some time now, though. They seem to be just as performant and utilize the dgpu at pretty much the same wattage when it’s used, while also fixing other small bugs due to using the AMD gpu for most things. I was quite surprised to see no real performance difference when I finally booted with discrete graphics yesterday. So my solution for now is to just use dynamic graphics.

This is the way that it is supposed to be because you have a Hybrid graphics set up.

Hmm that is strange. Since it has worked in the past, have you considered filing bug with Nvidia?

Also, If you are trying to just use the Nvidia GPU, you could blacklist the amdgpu ? Not usre I would do that personally though. . .


NOTE:

Now about hybrid graphics, On laptops this is set up so the dGPU only runs the software that needs it. You can also launch software specifically for it with tools like switcherooctl launch

Nvidia Driver installed properly but not used? | Switcherooctl | - #8 by hamrheadcorvette

Yeah, funnily enough I previously only used discrete graphics when I first setup Fedora some time during the spring, including the plymouth theme. It all worked exactly how it works with dynamic graphics right now. Another interesting thing is that Linux Mint (which is installed on another partition, encrypted home) boots fine with discrete graphics. I think it’s either one of the new nvidia drivers (some people with similar issues in other threads had that suspicion) or an issue in the Red Hat graphical boot (at least, some people thought so).

I’ll look into it a bit more and maybe file a bug with Nvidia, alternatively to bugzilla about the rhgb.

Oh, and yeah I’m able to run applications with discrete graphics using the KDE context menu. Games usually automatically use the dgpu (which I monitor through nvtop).

This is a Dual boot machine?

Yes, Windows 11 and Linux Mint on one drive, Fedora on a separate drive. I rarely (basically never) boot into anything other than Fedora.

Added multiboot