Rebooting screen flickering, Xorg.0.log Failed to load module "nvidia" (module does not exist, 0)

Folks,

After updating some ubuntu packages, and rebooting into runlevel 5, gdm-x-session is repeatedly trying to load driver nvidia, but says, “Failed to load module “nvidia” (module does not exist, 0)”.

What package installs this into /usr/lib/xorg/modules/drivers for gdm (Xorg/X11)?

Thanks

jay@jetson-ai:~$ date
Tue Jan  6 01:56:07 PM PST 2026
jay@jetson-ai:~$ journalctl -a | grep nvidia | tail
Jan 06 13:56:09 jetson-ai /usr/libexec/gdm-x-session[89368]: (EE) Failed to load module "nvidia" (module does not exist, 0)
Jan 06 13:56:10 jetson-ai /usr/libexec/gdm-x-session[89384]: (II) LoadModule: "nvidia"
Jan 06 13:56:10 jetson-ai /usr/libexec/gdm-x-session[89384]: (WW) Warning, couldn't open module nvidia
Jan 06 13:56:10 jetson-ai /usr/libexec/gdm-x-session[89384]: (EE) Failed to load module "nvidia" (module does not exist, 0)
Jan 06 13:56:10 jetson-ai /usr/libexec/gdm-x-session[89384]: (II) Applying OutputClass "nvidia" to /dev/dri/card0
Jan 06 13:56:10 jetson-ai /usr/libexec/gdm-x-session[89384]: 	loading driver: nvidia
Jan 06 13:56:10 jetson-ai /usr/libexec/gdm-x-session[89384]: (==) Matched nvidia as autoconfigured driver 0
Jan 06 13:56:10 jetson-ai /usr/libexec/gdm-x-session[89384]: (II) LoadModule: "nvidia"
Jan 06 13:56:10 jetson-ai /usr/libexec/gdm-x-session[89384]: (WW) Warning, couldn't open module nvidia
Jan 06 13:56:10 jetson-ai /usr/libexec/gdm-x-session[89384]: (EE) Failed to load module "nvidia" (module does not exist, 0)
jay@jetson-ai:~$ 

jay@jetson-ai:~$ dpkg -l nvidia-l4t-display-kernel
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                      Version                              Architecture Description
+++-=========================-====================================-============-=====================================
hi  nvidia-l4t-display-kernel 5.15.148-tegra-36.4.3-20250107174145 arm64        NVIDIA Display Kernel Modules Package
jay@jetson-ai:~$
jay@jetson-ai:~$ lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 22.04.5 LTS
Release:	22.04
Codename:	jammy
jay@jetson-ai:~$ 
jay@jetson-ai:~$ lsmod | grep nvidia
nvidia               1458176  0
nvidia_vrs_pseq        16384  0
tegra_dce              98304  2 nvidia
tsecriscv              32768  1 nvidia
host1x_nvhost          40960  7 nvhost_isp5,nvhost_nvcsi_t194,nvidia,tegra_camera,nvhost_capture,nvhost_nvcsi,nvhost_vi5
nvidia_p2p             20480  0
mc_utils               16384  3 nvidia,nvgpu,tegra_camera_platform
drm                   602112  4 drm_kms_helper,nvidia,tegra_drm
jay@jetson-ai:~$ 

jay@jetson-ai:~$ find /usr/lib/xorg/modules/ -type f
/usr/lib/xorg/modules/libint10.so
/usr/lib/xorg/modules/extensions/libglx.so
/usr/lib/xorg/modules/libshadowfb.so
/usr/lib/xorg/modules/libfbdevhw.so
/usr/lib/xorg/modules/libwfb.so
/usr/lib/xorg/modules/drivers/fbdev_drv.so
/usr/lib/xorg/modules/drivers/ati_drv.so
/usr/lib/xorg/modules/drivers/radeon_drv.so
/usr/lib/xorg/modules/drivers/modesetting_drv.so
/usr/lib/xorg/modules/drivers/vesa_drv.so
/usr/lib/xorg/modules/drivers/amdgpu_drv.so
/usr/lib/xorg/modules/drivers/nouveau_drv.so
/usr/lib/xorg/modules/libexa.so
/usr/lib/xorg/modules/libshadow.so
/usr/lib/xorg/modules/input/inputtest_drv.so
/usr/lib/xorg/modules/input/wacom_drv.so
/usr/lib/xorg/modules/input/libinput_drv.so
/usr/lib/xorg/modules/libvgahw.so
/usr/lib/xorg/modules/libglamoregl.so
jay@jetson-ai:~$

jay@jetson-ai:~$ apt-mark showhold
nvidia-l4t-display-kernel
nvidia-l4t-kernel
nvidia-l4t-kernel-dtbs
nvidia-l4t-kernel-headers
nvidia-l4t-kernel-oot-headers
nvidia-l4t-kernel-oot-modules
jay@jetson-ai:~$ 
jay@jetson-ai:~$ dpkg -l | grep l4t
ii  l4t-cuda-tegra-repo-ubuntu2204-12-6-local                12.6.11-1                                   arm64        l4t-cuda-tegra repository configuration files
ii  nvidia-l4t-apt-source                                    36.4.7-20250918154033                       arm64        NVIDIA L4T apt source list debian package
ii  nvidia-l4t-bootloader                                    36.4.3-20250107174145                       arm64        NVIDIA Bootloader Package
ii  nvidia-l4t-camera                                        36.4.3-20250107174145                       arm64        NVIDIA Camera Package
ii  nvidia-l4t-configs                                       36.4.3-20250107174145                       arm64        NVIDIA configs debian package
ii  nvidia-l4t-core                                          36.4.3-20250107174145                       arm64        NVIDIA Core Package
ii  nvidia-l4t-cuda                                          36.4.3-20250107174145                       arm64        NVIDIA CUDA Package
ii  nvidia-l4t-cuda-utils                                    36.4.3-20250107174145                       arm64        NVIDIA CUDA utilities
ii  nvidia-l4t-cudadebuggingsupport                          12.6-34622040.0                             arm64        NVIDIA CUDA Debugger Support Package
hi  nvidia-l4t-display-kernel                                5.15.148-tegra-36.4.3-20250107174145        arm64        NVIDIA Display Kernel Modules Package
ii  nvidia-l4t-dla-compiler                                  36.4.3-20250107174145                       arm64        NVIDIA DLA Compiler Package
ii  nvidia-l4t-firmware                                      36.4.3-20250107174145                       arm64        NVIDIA Firmware Package
ii  nvidia-l4t-gstreamer                                     36.4.3-20250107174145                       arm64        NVIDIA GST Application files
ii  nvidia-l4t-init                                          36.4.3-20250107174145                       arm64        NVIDIA Init debian package
ii  nvidia-l4t-initrd                                        36.4.3-20250107174145                       arm64        NVIDIA initrd debian package
ii  nvidia-l4t-jetson-io                                     36.4.3-20250107174145                       arm64        NVIDIA Jetson.IO debian package
ii  nvidia-l4t-jetson-multimedia-api                         36.4.3-20250107174145                       arm64        NVIDIA Jetson Multimedia API is a collection of lower-level APIs that support flexible application development.
ii  nvidia-l4t-jetsonpower-gui-tools                         36.4.3-20250107174145                       arm64        NVIDIA Jetson Power GUI Tools debian package
hi  nvidia-l4t-kernel                                        5.15.148-tegra-36.4.3-20250107174145        arm64        NVIDIA Kernel Package
hi  nvidia-l4t-kernel-dtbs                                   5.15.148-tegra-36.4.3-20250107174145        arm64        NVIDIA Kernel DTB Package
hi  nvidia-l4t-kernel-headers                                5.15.148-tegra-36.4.3-20250107174145        arm64        NVIDIA Linux Tegra Kernel Headers Package
hi  nvidia-l4t-kernel-oot-headers                            5.15.148-tegra-36.4.3-20250107174145        arm64        NVIDIA OOT Kernel Module Headers Package
hi  nvidia-l4t-kernel-oot-modules                            5.15.148-tegra-36.4.3-20250107174145        arm64        NVIDIA OOT Kernel Module Drivers Package
ii  nvidia-l4t-libwayland-client0                            36.4.3-20250107174145                       arm64        NVIDIA Wayland Package
ii  nvidia-l4t-libwayland-cursor0                            36.4.3-20250107174145                       arm64        NVIDIA Wayland Package
ii  nvidia-l4t-libwayland-egl1                               36.4.3-20250107174145                       arm64        NVIDIA Wayland Package
ii  nvidia-l4t-libwayland-server0                            36.4.3-20250107174145                       arm64        NVIDIA Wayland Package
ii  nvidia-l4t-multimedia                                    36.4.3-20250107174145                       arm64        NVIDIA Multimedia Package
ii  nvidia-l4t-multimedia-utils                              36.4.3-20250107174145                       arm64        NVIDIA Multimedia Package
ii  nvidia-l4t-nvfancontrol                                  36.4.3-20250107174145                       arm64        NVIDIA Nvfancontrol debian package
ii  nvidia-l4t-nvml                                          36.4.3-20250107174145                       arm64        NVIDIA NVML Package
ii  nvidia-l4t-nvpmodel                                      36.4.3-20250107174145                       arm64        NVIDIA Nvpmodel debian package
ii  nvidia-l4t-nvpmodel-gui-tools                            36.4.3-20250107174145                       arm64        NVIDIA Nvpmodel GUI Tools debian package
ii  nvidia-l4t-nvsci                                         36.4.3-20250107174145                       arm64        NVIDIA NvSci Package
ii  nvidia-l4t-oem-config                                    36.4.3-20250107174145                       arm64        NVIDIA OEM-Config Package
ii  nvidia-l4t-openwfd                                       36.4.3-20250107174145                       arm64        NVIDIA OpenWFD Package
ii  nvidia-l4t-optee                                         36.4.3-20250107174145                       arm64        OP-TEE userspace daemons, test programs and libraries
ii  nvidia-l4t-pva                                           36.4.3-20250107174145                       arm64        NVIDIA PVA Package
ii  nvidia-l4t-tools                                         36.4.3-20250107174145                       arm64        NVIDIA Public Test Tools Package
ii  nvidia-l4t-vulkan-sc                                     36.4.3-20250107174145                       arm64        NVIDIA Vulkan SC run-time package
ii  nvidia-l4t-vulkan-sc-dev                                 36.4.3-20250107174145                       arm64        NVIDIA Vulkan SC Dev package
ii  nvidia-l4t-vulkan-sc-samples                             36.4.3-20250107174145                       arm64        NVIDIA Vulkan SC samples package
ii  nvidia-l4t-vulkan-sc-sdk                                 36.4.3-20250107174145                       arm64        NVIDIA Vulkan SC SDK package
ii  nvidia-l4t-wayland                                       36.4.3-20250107174145                       arm64        NVIDIA Wayland Package
rc  nvidia-l4t-weston                                        36.4.3-20250107174145                       arm64        NVIDIA Weston Package
rc  nvidia-l4t-x11                                           36.4.3-20250107174145                       arm64        NVIDIA X11 Package
ii  nvidia-l4t-xusb-firmware                                 36.4.3-20250107174145                       arm64        NVIDIA USB Firmware Package
ii  pva-sdk-2.5-l4t                                          2.5.4                                       arm64        Programmable Vision Accelerator SDK
jay@jetson-ai:~$ 

I won’t be able to answer much of this, but the module it seems to be talking about is the user space module which plugs into the Xorg server itself. You can find the latest Xorg log when logged in to the Jetson:
ls -ltr /var/log/Xorg.*.log | tail -n 1

If you can boot up and then log in (it can be ssh or serial console), and then attach a copy of that log here, then that would probably help to confirm.

There are a lot of dynamically linked programs in Linux which use the linker to load a library, but this is not one of them. It is more of a direct load similar to the kernel loading its modules. The module must be compiled against that specific binary executable for it to correctly load, and if something in the X server itself updated, then it is possible that the module no longer loads. There should be mechanisms in place to help keep this straight, but I couldn’t tell you how to check them.

In addition to the Xorg log, when logged in, you might also get a copy of the actual dmesg log via:
demsg 2>&1 | tee log_dmesg.txt
(then attach that to the forum as well)

Between those two logs an exact cause should be found.

Hello,

Thank you for your response, yes I can ssh into the Jetson.

I found that file nvidia_drv.so was missing. I am not certain what package provides this file, but after copying it to the correct location, the display issue is resolved.

jay@jetson-ai:~$ ls -l /usr/lib/xorg/modules/drivers/
total 5512
-rw-r--r-- 1 root root  148240 Sep  5  2023 amdgpu_drv.so
-rw-r--r-- 1 root root   10304 Jul 11  2022 ati_drv.so
-rw-r--r-- 1 root root   23400 Mar 25  2022 fbdev_drv.so
-rw-r--r-- 1 root root  111168 Oct 23 10:47 modesetting_drv.so
-rw-r--r-- 1 root root  191200 Mar 25  2022 nouveau_drv.so
-rw-r--r-- 1 root root 4628544 Sep 18 15:40 nvidia_drv.so
-rw-r--r-- 1 root root  481136 Jul 11  2022 radeon_drv.so
-rw-r--r-- 1 root root   31632 Mar 25  2022 vesa_drv.so
jay@jetson-ai:~$ hexdump -Cv /usr/lib/xorg/modules/drivers/nvidia_drv.so | head
00000000  7f 45 4c 46 02 01 01 00  00 00 00 00 00 00 00 00  |.ELF............|
00000010  03 00 b7 00 01 00 00 00  a0 68 03 00 00 00 00 00  |.........h......|
00000020  40 00 00 00 00 00 00 00  80 99 46 00 00 00 00 00  |@.........F.....|
00000030  00 00 00 00 40 00 38 00  07 00 40 00 1b 00 1a 00  |....@.8...@.....|
00000040  01 00 00 00 05 00 00 00  00 00 00 00 00 00 00 00  |................|
00000050  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
00000060  98 69 41 00 00 00 00 00  98 69 41 00 00 00 00 00  |.iA......iA.....|
00000070  00 00 01 00 00 00 00 00  01 00 00 00 06 00 00 00  |................|
00000080  f8 71 41 00 00 00 00 00  f8 71 42 00 00 00 00 00  |.qA......qB.....|
00000090  f8 71 42 00 00 00 00 00  80 26 05 00 00 00 00 00  |.qB......&......|
jay@jetson-ai:~$

dmesg_log.txt (69.4 KB)

Xorg.0.log (7.5 KB)

I’m looking at an AGX Orin with L4T R35.2.1. The AGX part wouldn’t change this, but if you are on R36.x, then other parts might change answers. Be sure to note your L4T release (see “head -n 1 /etc/nv_tegra_release”).

On the system I’m looking at this file:
/usr/lib/xorg/modules/drivers/nvidia_drv.so
…is from package nvidia-l4t-3d-core.

What do you see from:

  • dpkg -l | grep -i 'nvidia-l4t-3d-core'
  • apt search nvidia-l4t-3d (in part this is to find out if your repository search locations includes the correct one).

For reference for anyone reading this, the Xorg log shows Xorg’s version is 1.21.1.4. The log does indeed show exactly what you mentioned, a failed attempt to load a missing nvidia module. This is probably the answer, but there is still another possibility. Are you using a purely HDMI or purely DisplayPort cable without adapters? It is ok to adapt between HDMI and DisplayPort, but if there is anything which is analog DVI or older VGA this too could be an issue. Probably not the issue since this would have been a problem with the old driver too, so it seems the update is the problem.

Hi,
Do you use custom board or developer kit? If you use custom board, please hold the packges:

Making sure you're not a bot!
[Jetpack 6.1/r36.4.0] Self-built kernel is overwritten after sudo apt update && sudo apt upgrade

To prevent the custom kernel and bootloader from being overwritten.

It is not a custom board, thanks.

I see updating caused this to be removed. Reinstalling with nvidia-l4t-x11 resolves the issue.

Thank you

jay@jetson-ai:~$ head -n 1 /etc/nv_tegra_release 
# R36 (release), REVISION: 4.3, GCID: 38968081, BOARD: generic, EABI: aarch64, DATE: Wed Jan  8 01:49:37 UTC 2025
jay@jetson-ai:~$ dpkg -l | grep -i 'nvidia-l4t-3d-core'
jay@jetson-ai:~$ apt search nvidia-l4t-3d
Sorting... Done
Full Text Search... Done
nvidia-l4t-3d-core/stable 36.4.7-20250918154033 arm64
  NVIDIA GL EGL Package

jay@jetson-ai:~$ grep 'nvidia-l4t-3d-core' /var/log/dpkg.log 
2026-01-06 10:35:59 status installed nvidia-l4t-3d-core:arm64 36.4.3-20250107174145
2026-01-06 10:35:59 remove nvidia-l4t-3d-core:arm64 36.4.3-20250107174145 <none>
2026-01-06 10:35:59 status half-configured nvidia-l4t-3d-core:arm64 36.4.3-20250107174145
2026-01-06 10:35:59 status half-installed nvidia-l4t-3d-core:arm64 36.4.3-20250107174145
2026-01-06 10:35:59 status config-files nvidia-l4t-3d-core:arm64 36.4.3-20250107174145
2026-01-06 10:35:59 status not-installed nvidia-l4t-3d-core:arm64 <none>
jay@jetson-ai:~$ 
jay@jetson-ai:~$ grep nvidia-l4t-x11 /var/log/dpkg.log 
2026-01-06 10:35:59 status installed nvidia-l4t-x11:arm64 36.4.3-20250107174145
2026-01-06 10:35:59 remove nvidia-l4t-x11:arm64 36.4.3-20250107174145 <none>
2026-01-06 10:35:59 status half-configured nvidia-l4t-x11:arm64 36.4.3-20250107174145
2026-01-06 10:35:59 status half-installed nvidia-l4t-x11:arm64 36.4.3-20250107174145
2026-01-06 10:35:59 status config-files nvidia-l4t-x11:arm64 36.4.3-20250107174145
jay@jetson-ai:~$ 

jay@jetson-ai:~$ sudo apt install nvidia-l4t-3d-core=36.4.3-20250107174145 nvidia-l4t-x11=36.4.3-20250107174145
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following NEW packages will be installed:
  nvidia-l4t-3d-core nvidia-l4t-x11
0 upgraded, 2 newly installed, 0 to remove and 46 not upgraded.
Need to get 89.4 MB of archives.
After this operation, 255 MB of additional disk space will be used.
Get:1 https://repo.download.nvidia.com/jetson/t234 r36.4/main arm64 nvidia-l4t-x11 arm64 36.4.3-20250107174145 [111 kB]
Get:2 https://repo.download.nvidia.com/jetson/t234 r36.4/main arm64 nvidia-l4t-3d-core arm64 36.4.3-20250107174145 [89.3 MB]
Fetched 89.4 MB in 20s (4,513 kB/s)                                                                                                            
Selecting previously unselected package nvidia-l4t-x11.
(Reading database ... 203496 files and directories currently installed.)
Preparing to unpack .../nvidia-l4t-x11_36.4.3-20250107174145_arm64.deb ...
Unpacking nvidia-l4t-x11 (36.4.3-20250107174145) ...
Selecting previously unselected package nvidia-l4t-3d-core.
Preparing to unpack .../nvidia-l4t-3d-core_36.4.3-20250107174145_arm64.deb ...
Unpacking nvidia-l4t-3d-core (36.4.3-20250107174145) ...
Setting up nvidia-l4t-x11 (36.4.3-20250107174145) ...
Setting up nvidia-l4t-3d-core (36.4.3-20250107174145) ...
Processing triggers for libc-bin (2.35-0ubuntu3.11) ...
jay@jetson-ai:~$ dpkg -L nvidia-l4t-3d-core
/.
/etc
/etc/vulkan
/etc/vulkan/icd.d
/usr
/usr/lib
/usr/lib/aarch64-linux-gnu
/usr/lib/aarch64-linux-gnu/nvidia
/usr/lib/aarch64-linux-gnu/nvidia/libGLX_nvidia.so.0
/usr/lib/aarch64-linux-gnu/nvidia/libnvidia-eglcore.so.540.4.0
/usr/lib/aarch64-linux-gnu/nvidia/libnvidia-glcore.so.540.4.0
/usr/lib/aarch64-linux-gnu/nvidia/libnvidia-glsi.so.540.4.0
/usr/lib/aarch64-linux-gnu/nvidia/libnvidia-glvkspirv.so.540.4.0
/usr/lib/aarch64-linux-gnu/nvidia/libnvidia-gpucomp.so.540.4.0
/usr/lib/aarch64-linux-gnu/nvidia/libnvidia-nvvm.so.540.4.0
/usr/lib/aarch64-linux-gnu/nvidia/libnvidia-ptxjitcompiler.so.540.4.0
/usr/lib/aarch64-linux-gnu/nvidia/libnvidia-rtcore.so.540.4.0
/usr/lib/aarch64-linux-gnu/nvidia/nvidia_icd.json
/usr/lib/aarch64-linux-gnu/tegra-egl
/usr/lib/aarch64-linux-gnu/tegra-egl/ld.so.conf
/usr/lib/aarch64-linux-gnu/tegra-egl/libEGL_nvidia.so.0
/usr/lib/aarch64-linux-gnu/tegra-egl/libGLESv1_CM_nvidia.so.1
/usr/lib/aarch64-linux-gnu/tegra-egl/libGLESv2_nvidia.so.2
/usr/lib/aarch64-linux-gnu/tegra-egl/nvidia.json
/usr/lib/xorg
/usr/lib/xorg/modules
/usr/lib/xorg/modules/drivers
/usr/lib/xorg/modules/drivers/nvidia_drv.so
/usr/lib/xorg/modules/extensions
/usr/lib/xorg/modules/extensions/libglxserver_nvidia.so
/usr/share
/usr/share/doc
/usr/share/doc/nvidia-l4t-3d-core
/usr/share/doc/nvidia-l4t-3d-core/changelog.Debian.gz
/usr/share/doc/nvidia-l4t-3d-core/copyright
/usr/share/doc/nvidia-tegra
/usr/share/doc/nvidia-tegra/LICENSE.libEGL_nvidia
/usr/share/doc/nvidia-tegra/LICENSE.libGLX_nvidia-libglxserver_nvidia
/usr/share/doc/nvidia-tegra/LICENSE.libnvidia-rtcore.gz
/usr/share/glvnd
/usr/share/glvnd/egl_vendor.d
/etc/vulkan/icd.d/nvidia_icd.json
/usr/lib/aarch64-linux-gnu/nvidia/libnvidia-nvvm.so.4
/usr/lib/aarch64-linux-gnu/nvidia/libnvidia-ptxjitcompiler.so.1
/usr/share/glvnd/egl_vendor.d/10_nvidia.json
jay@jetson-ai:~$ dpkg -L nvidia-l4t-x11
/.
/etc
/etc/X11
/etc/X11/xorg.conf
/etc/X11/xorg.conf.d
/etc/X11/xorg.conf.d/tegra-drm-outputclass.conf
/usr
/usr/bin
/usr/bin/nvidia-xconfig
/usr/share
/usr/share/doc
/usr/share/doc/nvidia-l4t-x11
/usr/share/doc/nvidia-l4t-x11/changelog.Debian.gz
/usr/share/doc/nvidia-l4t-x11/copyright
/usr/share/doc/nvidia-tegra
/usr/share/doc/nvidia-tegra/SOURCE.nvidia-xconfig
jay@jetson-ai:~$ 


Are you using a purely HDMI or purely DisplayPort cable without adapters?

I switch between both at times.