Black screen immediately after Grub menu - GeForce 4060 - Ubuntu 24.04.1

On my dual boot Asus ProArt px13 laptop, immediately after the grub menu, if I try to boot into Ubuntu, I see a black screen. I have tried various different nvidia drivers (535, 550, 560, 570, 570-open) without success.

Machine Specs

Machine: Asus ProArt px13
Operating systems: Windows 11 and Ubuntu 24.04.1
Kernel: 6.8.0-52-generic
GPU: Nvidia GeForce RTX 4060 Max-Q / Mobile
CPU: AMD Ryzen AI 9 HX 370 w/ Radeon 890M

Further Details

If I purge all Nvidia drives and add nomodeset to boot command, I can login, but my second monitor does not work, and I of course cannot access GPU.

When I install the nvidia drivers, they are originally not recognised. However, after running modprobe nvidia, nvidia-smi returns as expected. But second monitor still does not work.

The only way to login with nvidia driver installed, is to add acpi=off to boot command. This gets me to login, but second monitor and touchpad both don’t work.

I created an nvidia-bug-report.log.gz file by purging all nvidia drivers and then booting with nomodeset then installing the drivers and running nvidia-bug-report.sh. However, the resulting log file is too large to attach here. It contains over 200,000 lines of output.

Typical output from journalctl :

journalctl -b -2 | grep -i nvidia
Feb 08 15:20:37 ahmed-learning-device kernel: nvidia: loading out-of-tree module taints kernel.
Feb 08 15:20:37 ahmed-learning-device kernel: nvidia: module verification failed: signature and/or required key missing - tainting kernel
Feb 08 15:20:37 ahmed-learning-device kernel: nvidia-nvlink: Nvlink Core is being initialized, major device number 236
Feb 08 15:20:37 ahmed-learning-device kernel: nvidia 0000:c4:00.0: enabling device (0000 -> 0003)
Feb 08 15:20:37 ahmed-learning-device kernel: nvidia 0000:c4:00.0: vgaarb: VGA decodes changed: olddecodes=io+mem,decodes=none:owns=none
Feb 08 15:20:37 ahmed-learning-device kernel: NVRM: loading NVIDIA UNIX Open Kernel Module for x86_64  570.86.16  Release Build  (dvs-builder@U16-I2-C04-15-2)  Fri Jan 24 21:05:28 UTC 2025
Feb 08 15:20:37 ahmed-learning-device systemd-modules-load[527]: Inserted module 'nvidia'
Feb 08 15:20:37 ahmed-learning-device kernel: nvidia-modeset: Loading NVIDIA UNIX Open Kernel Mode Setting Driver for x86_64  570.86.16  Release Build  (dvs-builder@U16-I2-C04-15-2)  Fri Jan 24 20:49:16 UTC 2025
Feb 08 15:20:37 ahmed-learning-device kernel: [drm] [nvidia-drm] [GPU ID 0x0000c400] Loading driver
Feb 08 15:20:39 ahmed-learning-device kernel: input: HDA NVidia HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:03.1/0000:c4:00.1/sound/card1/input37
Feb 08 15:20:39 ahmed-learning-device kernel: input: HDA NVidia HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:03.1/0000:c4:00.1/sound/card1/input38
Feb 08 15:20:39 ahmed-learning-device kernel: input: HDA NVidia HDMI/DP,pcm=8 as /devices/pci0000:00/0000:00:03.1/0000:c4:00.1/sound/card1/input39
Feb 08 15:20:39 ahmed-learning-device kernel: input: HDA NVidia HDMI/DP,pcm=9 as /devices/pci0000:00/0000:00:03.1/0000:c4:00.1/sound/card1/input40
Feb 08 15:20:40 ahmed-learning-device kernel: [drm] Initialized nvidia-drm 0.0.0 20160202 for 0000:c4:00.0 on minor 1
Feb 08 15:20:40 ahmed-learning-device kernel: nvidia 0000:c4:00.0: vgaarb: deactivate vga console
Feb 08 15:20:40 ahmed-learning-device kernel: nvidia 0000:c4:00.0: [drm] Cannot find any crtc or sizes
Feb 08 15:20:40 ahmed-learning-device kernel: nvidia-uvm: Loaded the UVM driver, major device number 506.
Feb 08 15:20:40 ahmed-learning-device systemd[1]: Starting nvidia-persistenced.service - NVIDIA Persistence Daemon...
Feb 08 15:20:40 ahmed-learning-device nvidia-persistenced[1339]: Verbose syslog connection opened
Feb 08 15:20:40 ahmed-learning-device nvidia-persistenced[1339]: Now running with user ID 122 and group ID 124
Feb 08 15:20:40 ahmed-learning-device nvidia-persistenced[1339]: Started (1339)
Feb 08 15:20:40 ahmed-learning-device nvidia-persistenced[1339]: device 0000:c4:00.0 - registered
Feb 08 15:20:40 ahmed-learning-device nvidia-persistenced[1339]: Local RPC services initialized
Feb 08 15:20:40 ahmed-learning-device systemd[1]: Started nvidia-persistenced.service - NVIDIA Persistence Daemon.
Feb 08 15:57:30 ahmed-learning-device nvidia-persistenced[1339]: Received signal 15
Feb 08 15:57:30 ahmed-learning-device systemd[1]: Stopping nvidia-persistenced.service - NVIDIA Persistence Daemon...
Feb 08 15:57:30 ahmed-learning-device nvidia-persistenced[1339]: Socket closed.
Feb 08 15:57:30 ahmed-learning-device nvidia-persistenced[1339]: PID file unlocked.
Feb 08 15:57:30 ahmed-learning-device nvidia-persistenced[1339]: PID file closed.
Feb 08 15:57:30 ahmed-learning-device nvidia-persistenced[1339]: The daemon no longer has permission to remove its runtime data directory /var/run/nvidia-persistenced
Feb 08 15:57:30 ahmed-learning-device nvidia-persistenced[1339]: Shutdown (1339)
Feb 08 15:57:30 ahmed-learning-device systemd[1]: nvidia-persistenced.service: Deactivated successfully.
Feb 08 15:57:30 ahmed-learning-device systemd[1]: Stopped nvidia-persistenced.service - NVIDIA Persistence Daemon.

someone with an Asus mobo had a somewhat similar issue recently and it was solved by a BIOS/UEFI firmware update: do you have the latest version for yours? If not maybe you could give it a try?

Regarding your nvidia-bug-report.log.gz file being too big: maybe you could upload it somewhere else (dropbox, google-drive etc) and post a link here?

I installed the nvidia*.run driver in recovery mode, it replaced the xorg.conf file and it worked. The problem is in the xorg.conf file and its settings. I don’t remember what settings Ubuntu makes in this file, which lead to a problem with the driver that Ubuntu installs by default

1 Like

Thanks for the response. What do you mean by the nvidia*.run driver? When I run ubuntu-drivers devices, here is what I see:

$ ubuntu-drivers devices
udevadm hwdb is deprecated. Use systemd-hwdb instead.
udevadm hwdb is deprecated. Use systemd-hwdb instead.
udevadm hwdb is deprecated. Use systemd-hwdb instead.
udevadm hwdb is deprecated. Use systemd-hwdb instead.
udevadm hwdb is deprecated. Use systemd-hwdb instead.
udevadm hwdb is deprecated. Use systemd-hwdb instead.
udevadm hwdb is deprecated. Use systemd-hwdb instead.
udevadm hwdb is deprecated. Use systemd-hwdb instead.
udevadm hwdb is deprecated. Use systemd-hwdb instead.
udevadm hwdb is deprecated. Use systemd-hwdb instead.
udevadm hwdb is deprecated. Use systemd-hwdb instead.
udevadm hwdb is deprecated. Use systemd-hwdb instead.
udevadm hwdb is deprecated. Use systemd-hwdb instead.
udevadm hwdb is deprecated. Use systemd-hwdb instead.
== /sys/devices/pci0000:00/0000:00:03.1/0000:c4:00.0 ==
modalias : pci:v000010DEd000028A0sv00001043sd000038A8bc03sc00i00
vendor   : NVIDIA Corporation
model    : AD107M [GeForce RTX 4060 Max-Q / Mobile]
driver   : nvidia-driver-535-server-open - distro non-free
driver   : nvidia-driver-535-server - distro non-free
driver   : nvidia-driver-565-open - third-party non-free
driver   : nvidia-driver-535-open - third-party non-free
driver   : nvidia-driver-545 - third-party non-free
driver   : nvidia-driver-535 - third-party non-free
driver   : nvidia-driver-550-open - third-party non-free
driver   : nvidia-driver-550 - third-party non-free
driver   : nvidia-driver-545-open - third-party non-free
driver   : nvidia-driver-560 - third-party non-free recommended
driver   : nvidia-driver-570-open - third-party non-free
driver   : nvidia-driver-565 - third-party non-free
driver   : nvidia-driver-560-open - third-party non-free
driver   : nvidia-driver-570 - third-party non-free
driver   : xserver-xorg-video-nouveau - distro free builtin

Here is the bug report uploaded to Google Drive (for some reason Google wouldn’t let me upload the compressed version)

Regarding the answer that you linked, I don’t understand what the accepted answer means by “reflashed bios”. Definitely sounds scary!

My own UEFI firmware seems to be update. See screenshot below

One of the two ways to install the official Nvidia drivers, second being this:

I assume the author of the post meant exactly clicking “check of updates” and installing whatever was presented to him, but as your screenshot shows, this does not apply to your case.

Thanks for the clarifications. Any particular reason to install the .run file in recovery mode, and not purge nvidia drivers then login and install?

you should better tag people if not replying directly using “Reply” button (like this: @dalexandrim1 ), otherwise they are likely to miss your questions ;-)

Yes, delete all previous drivers, install from the official nvidia website
sh nvidia*.run
, unfortunately I don’t know how normal this will be for ubuntu and future updates.
Or try to manually edit /etс/X11/xorg.conf as needed, maybe that will be the best option.

@morgwai666 thanks, noted!

@dalexandrim1 , I’d be happy to edit the /etc/X11/xorg.conf file, if I had any idea what needs editing! Since I don’t I’ll try the sh nvidia*.run thing. Do you think that I should delete my xorg.conf file before I install?

I tried deleting the /etc/X11/xorg.conf file and installing the nvidia driver from the nvidia*.run file. No luck.

The behaviour is different now. My laptop screen is stuck with a loading symbol, whilst the second monitor actually makes it to the login page. Once I enter login details, it too goes black.

I’m wondering whether it is linked to the fact that my laptop has both integrated graphics (AMD Radeon 890M) and a dedicated GPU? In particular the following paragraph from Nvidia download page caught my attention:

Note that the list of supported GPU products is provided to indicate which GPUs are supported by a particular driver version. Some designs incorporating supported GPUs may not be compatible with the NVIDIA Linux driver: in particular, notebook and all-in-one desktop designs with switchable (hybrid) or Optimus graphics will not work if means to disable the integrated graphics in hardware are not available. Hardware designs will vary from manufacturer to manufacturer, so please consult with a system’s manufacturer to determine whether that particular system is compatible

had a look at this log file, it seems that this is the core issue:

Feb 08 21:41:08 ahmed-learning-device kernel: NVRM: Can’t find an IRQ for your NVIDIA card!
Feb 08 21:41:08 ahmed-learning-device kernel: NVRM: Please check your BIOS settings.
Feb 08 21:41:08 ahmed-learning-device kernel: NVRM: [Plug & Play OS] should be set to NO
Feb 08 21:41:08 ahmed-learning-device kernel: NVRM: [Assign IRQ to VGA] should be set to YES
Feb 08 21:41:08 ahmed-learning-device kernel: NVRM: The NVIDIA probe routine failed for 1 device(s).
Feb 08 21:41:08 ahmed-learning-device kernel: NVRM: None of the NVIDIA devices were initialized.

there’s LOTS of these entries there btw:

$ grep "NVRM: Can't find an IRQ for your NVIDIA card!" nvidia-bug-report.log |wc -l
12399

So yeah: try to modify your BIOS settings as suggested by the logs and see if it helps :)

I got this message when I was playing around with my grub command line and put in “noapic” to try to get rid of some boot error messages

What is the output of “cat /proc/cmdline” ?

1 Like

too lazy to even type grep -i "kernel command line"? man, you beat even me, ha ha ;-)

$ grep -i "kernel command line" nvidia-bug-report.log 
Feb 08 22:11:13 ahmed-learning-device /usr/libexec/gdm-x-session[1927]: Kernel command line: BOOT_IMAGE=/boot/vmlinuz-6.8.0-52-generic root=UUID=d1ffb93f-14e6-4949-8586-3a2cf810605b ro quiet splash nomodeset vt.handoff=7
Feb 08 22:11:26 ahmed-learning-device /usr/libexec/gdm-x-session[2801]: Kernel command line: BOOT_IMAGE=/boot/vmlinuz-6.8.0-52-generic root=UUID=d1ffb93f-14e6-4949-8586-3a2cf810605b ro quiet splash nomodeset vt.handoff=7
Feb 08 21:41:23 ahmed-learning-device /usr/libexec/gdm-x-session[2489]: Kernel command line: BOOT_IMAGE=/boot/vmlinuz-6.8.0-52-generic root=UUID=d1ffb93f-14e6-4949-8586-3a2cf810605b ro quiet splash acpi=off vt.handoff=7
Feb 08 21:42:37 ahmed-learning-device /usr/libexec/gdm-x-session[9331]: Kernel command line: BOOT_IMAGE=/boot/vmlinuz-6.8.0-52-generic root=UUID=d1ffb93f-14e6-4949-8586-3a2cf810605b ro quiet splash acpi=off vt.handoff=7
[   777.316] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-6.8.0-52-generic root=UUID=d1ffb93f-14e6-4949-8586-3a2cf810605b ro recovery nomodeset dis_ucode_ldr
[    0.017662] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-6.8.0-52-generic root=UUID=d1ffb93f-14e6-4949-8586-3a2cf810605b ro quiet splash nomodeset vt.handoff=7
[    0.017715] Unknown kernel command line parameters "splash BOOT_IMAGE=/boot/vmlinuz-6.8.0-52-generic", will be passed to user space.

@ayb man, you really need to clean this up ;-) I’m a total n00b in terms of low-level stuff, so I may be wrong, but it seems to me that acpi=off turns off like half of your hardware
 For sure Unknown kernel command line parameters sounds bad: it is possible that this is a part of your problem
 Revert to vanilla kernel params, check your BIOS settings and then let us know how it went.

Yup I am very lazy :=), and it was very late where I am heh 
 and you’re right. That’s one ugly cmdline

1 Like

@morgwai666, thanks for the feedback. I’m pretty new to this stuff I’m afraid. You say I should try and modify my BIOS settings, but which ones, and to what values? Are you referring to:

Feb 08 21:41:08 ahmed-learning-device kernel: NVRM: [Plug & Play OS] should be set to NO
Feb 08 21:41:08 ahmed-learning-device kernel: NVRM: [Assign IRQ to VGA] should be set to YES

If yes, I don’t see a “Plug and Play” option nor an “IRQ” option when I check my BIOS settings.

@morgwai666 and @dartefi, sorry but I don’t see what is that bad about my command line? I don’t understand the Unknown kernel command line error, since the parameters highlighted are standard. The kernel image and splash.

but it seems to me that acpi=off turns off like half of your hardware


How do you make this out?

I’m a bit confused by why there are two kernel cmdlines but first the bios

I went to the Asus website and the latest bios is
Version 312 2024/12/19

Next thing, I see there is and EZ and Advanced (F7) mode in the bios. That may be why you’re not seeing the settings the log told you to change

This may help:
Asus Bios Navigation

@dartefi I can explain why there are different cmdlines. I have been experimenting with different parameters in order to see whether anything will get my GPU to work. nvidia-bug-report must be collecting all the commandlines I have used rather than just my latest.

Thanks for the link to Asus Bios help. I still think that these options are not available on my Bios.

As far as I can see from your logs, not a single 1 of them is what I would describe as “clean”. there is always either acpi=off or nomodeset. It’s quite likely that this is the source of your problem.

Regarding Unknown kernel command line parameters xxx will be passed to user space: this is harmless indeed: I misunderstood it before.

I have definitely tried it without nomodeset and acpi=off. Perhaps nvidia-bug-report.sh doesn’t log vanilla command lines?