X stopped working after upgrading to 14.3.

Well, after finding the pointers to the URLs where the various files were stored, and after correcting those in the various files, I managed to complete pkg update, then pkg upgrade

Both finished correctly.

Then I did freebsd-update -r 14.3-RELEASE upgrade and that also finished happily.

Then, after re-booting, I can log into the system, and command uname -a returns 14.3-RELEASE-p5. And that's just great!

BUT, now when I type startx I get an error and the log shows that nvidia-kmod files are not loaded and the system cannot "find a screen" for X.

So, I am back to the drawing board for a bit...

If anyone has a clue to how to fix THIS problem, I would appreciate hearing about it.

Thanks,

Ken Gordon
 
sysrc kld_list # to check what kernel modules are loaded if any
sysrc kld_list+=nvidia-modeset # to load nvidia.ko & nvidia-modeset.ko on reboot
kldload nvidia-modeset # for using it without rebooting
# -- this may or may not work... Reboot should fix this in any case


If this doesn't work, let us know what nvidia graphics card you have + installed nvidia packages with
pciconf -lv |grep -B3 -A1 -i display
pkg info | grep nvidia
 
As far as I know the NVidia drivers (and their DRM driver counterparts) aren't included in the kmods repository yet. But those shouldn't be needed anymore, as the repositories are now built for 14.3-RELEASE specifically. But due to various version shenanigans, you might need to force a reinstall on them. What does pkg info -x nvidia output?
 
As far as I know the NVidia drivers (and their DRM driver counterparts) aren't included in the kmods repository yet. But those shouldn't be needed anymore, as the repositories are now built for 14.3-RELEASE specifically. But due to various version shenanigans, you might need to force a reinstall on them. What does pkg info -x nvidia output?
Yes, I've had chance to discuss briefly with bapt on Matrix and already fixed what he wanted, and it's already landed both main (aka latest) and 2025Q4.
Another possible cause he thought of is digged into by himself now.
 
Fortunately, 14.2-Release is EoL'ed at Srp.30, 2025 and official pkgs at main repo (FreeBSD) for 14.x are built using 14.3-Release starting from this October. So anyone using 14.3-Release can use main repo for kmod pkgs.

Note that users of stable/14 would possibly need building kmod ports locally, as there can be breaking changes (especially for LinuxKPI, that all DRM GPU driver kmods require) unlike patch releases on same minor version (14.3-Release-p1 and so on).
This is because stable branch is semi-developement branch for next minor version upgrades like upcoming 14.4-Release.
 
But those shouldn't be needed anymore, as the repositories are now built for 14.3-RELEASE specifically. But due to various version shenanigans, you might need to force a reinstall on them.
14.3-RELEASE has been out for awhile, and repos are only now being built? Yeah, that is an argument for just building yourself from ports...
 
Yes, so now, as in currently, at the present point in time, they're being built for 14.3-RELEASE. And have been doing so since the beginning of October.
 
Try paying attention, repositories were built for 14.2 until it went EoL. There's a three month overlap.
From this, I would conclude that FreeBSD repos are being constantly built. Each release version has several architectures (amd64, aarch64, and so on). With close to 40,000 packages (which need to be rebuilt for each release AND each architecture), there's a good chance that something will have build errors, or a package will not be pre-built in time. Yeah, it does take time to prep a repo even for the amd64 alone. Add in the quarterly and latest, for 'em all, and you have a combinatorial explosion on your hands, and people complain about missing packages on the Forums. Just the math with timing considerations is adding up in favor of compiling stuff myself.
 
Hmmm....it seems obvious to me that I should not have upgraded to 14.3 until after 14.2's EOL. Oh, well. It is a learning experience for me, at least.

Ken Gordon
 
sysrc kld_list # to check what kernel modules are loaded if any
sysrc kld_list+=nvidia-modeset # to load nvidia.ko & nvidia-modeset.ko on reboot
kldload nvidia-modeset # for using it without rebooting
# -- this may or may not work... Reboot should fix this in any case

Well, this is interesting: typing sysrc kld-list returns kld-list nvidia-modeset fusefs usbhid, which seems to say that nvidia files ARE installed.

If this doesn't work, let us know what nvidia graphics card you have + installed nvidia packages with
pciconf -lv |grep -B3 -A1 -i display
pkg info | grep nvidia

Inputting the above command results in vendor = NVIDIA CORP
device = 'GP107 (GeForce GTX-1050-Ti)'
class = Display
subclass=VGA


So, it would appear to me that the system IS properly loading the necessary nvidia files, and my problem MAY be within X instead.

Checking Xorg.0.log, I find a lot of "stuff" but as far as I am concerned, the following are the most informative:
370-960] (EE) NVIDIA Failed to initialize NVIDIA kernel module. Please see the system kernel log for additional error messages and consult the NVIDIA README for details.
(EE) No Devices Detected. Fatal Server Error
(EE) No Screens Found


So, unless I am interpreting what I am seeing incorrectly, the problem is within X.

...and, of course, I have no clue as to where the file NVIDIA README is...

Also, when I do pkg info -x nvidia the system returns nvidia-driver - 580.95.05 nvidia-kmod - 580.95.05.1403506

Ken Gordon
 
Another possible clue is that if, at the command prompt, as normal user, I input firefox I receive a no screens found

And, since I cannot seem to get into Firefox while using my FreeBSD installation, I am having to switch back and forth between Win10 and FreeBSD to get the info needed by restarting the computer each time...which is getting old.

Ken Gordon
 
Are you sure you have x11/nvidia-driver installed?

Non-kernel module part of nvidia GPU driver set are installed by it, and pulls in corresponding branch of x11/nvidia-kmod now. Upgraring from pre-splitting out version needs special attention, written in UPDATING entry dated 20250930.

If the above is OK, and if you DON'T use graphics/nvidia-drm-*-kmod[-devel], are you sure you've configured xorg properly? (x11/nvidia-xconfigwould help you configuring in old-school monolithic /etc/X11/xorg.conf.)

If you're using any of graphics/nvidia-drm-*-kmod[-devel], you need nvidia-drm.kmod to be loaded (it pulls in nvidia-modeset.ko and nvidia.ko as its dependency automatically).
 
My /usr/local/etc/X11/xorg.conf.d/nvidia contains
Section "Device"
Identifier "Card0"
Driver "nvidia"
EndSection

I wonder if you need this. [Note that I set this file up in 2021 and have no idea if this is actually used now!]

I have GT-1030 which is an older card. I have the same two nvidia pkgs. I also installed graphics/nvidia-drm-61-kmod though I suspect it is not used at all.

I also have hw.nvidiadrm.modeset=1 in /boot/loader.conf though I no longer remember whether this is needed!

I am not running 14.3 but did switch from stable/14 branch to stable/15 without much trouble (via local builds).
 
Try manually loading the NVidia .ko modules by hand. Are they named correctly?

When I try to install anything related to nvidia, the response is that they have all already been installed. They seem to be named correctly.
Are you sure you have x11/nvidia-driver installed?

Yes. Attempting to install that the response is "already installed".

Non-kernel module part of nvidia GPU driver set are installed by it, and pulls in corresponding branch of x11/nvidia-kmod now. Upgrading from pre-splitting out version needs special attention, written in UPDATING entry dated 20250930.

If the above is OK, and if you DON'T use graphics/nvidia-drm-*-kmod[-devel], are you sure you've configured xorg properly? (x11/nvidia-xconfigwould help you configuring in old-school monolithic /etc/X11/xorg.conf.)

If you're using any of graphics/nvidia-drm-*-kmod[-devel], you need nvidia-drm.kmod to be loaded (it pulls in nvidia-modeset.ko and nvidia.ko as its dependency automatically).


Are they located in /boot/modules, or not really?

Yes. And nvidia-modeset is loaded at boot....however, the version shown in the kernel log is ver 570, whereas the loaded version of the driver is version 580. I am not certain that should make any difference, but I don't think it should.

Ken Gordon
 
My /usr/local/etc/X11/xorg.conf.d/nvidia contains
Section "Device"
Identifier "Card0"
Driver "nvidia"
EndSection

I wonder if you need this. [Note that I set this file up in 2021 and have no idea if this is actually used now!]

I have GT-1030 which is an older card. I have the same two nvidia pkgs. I also installed graphics/nvidia-drm-61-kmod though I suspect it is not used at all.

I also have hw.nvidiadrm.modeset=1 in /boot/loader.conf though I no longer remember whether this is needed!

I am not running 14.3 but did switch from stable/14 branch to stable/15 without much trouble (via local builds).

I have checked all the xorg.conf files and all are correct.

Ken Gordon
 
You'll find it at /usr/local/share/doc/NVIDIA_GLX-1.0/README if you DON'T explicitly disabled DOC option.

And for 580.95.05, you can read web version here.
No. It is not there. There is no NVIDIA_GLX-1.0 directory in directory /usr........./doc, and I have NOT explicitly disabled the DOC option.

Also, I have tried find in various iterations to find that file, and although I find MANY different README files, that one never appears.

Ken Gordon
 
I am tempted, at this point, to upgrade to 15.0-STABLE....and if THAT doesn't cure the problem, then I am (not) looking forward to rebuilding the entire system from scratch. Rats.
My /usr/local/etc/X11/xorg.conf.d/nvidia contains
Section "Device"
Identifier "Card0"
Driver "nvidia"
EndSection

I wonder if you need this. [Note that I set this file up in 2021 and have no idea if this is actually used now!]

Well, my files are named xorg.conf and "reside" in two places which X looks for at boot. Both files are correct looking much like yours

X cannot find or load the nvidia drivers. I get "screen not found" in all cases. I am confused as heck at this point.

In my past experience with this sort of thing, repairing it wasn't that difficult....this one is

Ken Gordon
 
I will go back to the system, re-read all the logs, copy out those lines that appear to have some relation to this problem, and revisit my thinking on it.

Thanks for the help, folks.

Ken Gordon
 
however, the version shown in the kernel log is ver 570, whereas the loaded version of the driver is version 580. I am not certain that should make any difference, but I don't think it should.
I see this:
# dmesg|grep nvidia
nvidia0: <NVIDIA GeForce GT 1030> on vgapci0
vgapci0: child nvidia0 requested pci_enable_io
vgapci0: child nvidia0 requested pci_enable_io
nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms 580.95.05 Tue Sep 23 09:31:22 UTC 2025


Could it be that somehow the wrong module is being loaded? Make sure you have no nvidia*.ko in /boot/kernel.
I see this:
# ls -l /boot/*/nvidia*
-r--r--r-- 1 root wheel 74848192 Oct 11 18:17:15 2025 /boot/modules/nvidia_gsp_ga10x_fw.ko
-r--r--r-- 1 root wheel 30323752 Oct 11 18:17:15 2025 /boot/modules/nvidia_gsp_tu10x_fw.ko
-r--r--r-- 1 root wheel 164576 Oct 21 01:08:35 2025 /boot/modules/nvidia-drm.ko # <-- not used
-r--r--r-- 1 root wheel 2106704 Oct 11 18:17:15 2025 /boot/modules/nvidia-modeset.ko
-r--r--r-- 1 root wheel 112565392 Oct 11 18:17:15 2025 /boot/modules/nvidia.ko
# kldstat |grep nvidia
10 1 0xffffffff83921000 1650f8 nvidia-modeset.ko
11 1 0xffffffff83c00000 6058178 nvidia.ko
 
Back
Top