# [nvidia] legacy support on production releases - nvidia.ko unsupported



## multix (Aug 3, 2021)

I have a laptop with nvidia which requires the 340 legacy driver. I upgraded to FreeBSD 13.0 and nvidia does not work neither in console nor in X11 and in dmesg I see this:



> KLD nvidia.ko: depends on kernel - not available or version mismatch
> linker_load_file: /boot/modules/nvidia.ko - unsupported file type



I have this:

nvidia-driver-340-340.108_2    NVidia graphics card binary drivers for hardware OpenGL rendering

can this issue be solved? It does not make much sense to get a package incompatibile with the kernel.

I also have an older ThinkPad which needs the 304 series legacy drivers, these break with FreeBSD 12.2 already because of an Xorg update came in with ports. For that one there is already a known bug:

Bug 244421

Supposing to have "latest port available" for a certain release, maybe a table of compatibility would be useful



Latest known goodBroken30412.112.2 Xorg ABI incompatible34012.213.0 - kld does not load39013.0?


If someone can help me with this current 340 issue, thanks but in the long run what is possible? the "nv" driver is full of issues, sometimes works, sometimes not and even when working is buggy. On linux often one has luck with nouveau, but that is not an option on FreeBSD... these binary drivers are pesky. I try not to buy nvidia, but sometimes it is just inside laptops!


----------



## SirDice (Aug 3, 2021)

The 390 version should still work:

```
root@williscorto:~ # pkg info -x nvidia
nvidia-driver-390-390.143_1
root@williscorto:~ # freebsd-version -uk
13.0-RELEASE-p1
13.0-RELEASE-p2
```

The 304 version is indeed broken due to changes in Xorg. I'm honestly not sure if the 340 version still works.



multix said:


> . I upgraded to FreeBSD 13.0 and nvidia does not work


Did you reinstall _all_ ports/packages after the upgrade as instructed? After a _major_ version upgrade you _must_ reinstall everything. Usually a `pkg upgrade` does this for you already.


----------



## multix (Aug 3, 2021)

SirDice said:


> Did you reinstall _all_ ports/packages after the upgrade as instructed? After a _major_ version upgrade you _must_ reinstall everything. Usually a `pkg upgrade` does this for you already.



SirDice, thanks. Yes I did. I re-run `pkg upgrade` which did several times ask for confirmation and afterwards I did re-run `freebsd-update insta`. Just to be sure I do rerun it now... and wow, there were more 

Apparently the previous upgrade broke, because I am getting this error:



> [1/62] Installing pulseaudio-14.2...
> ===> Creating groups.
> Using existing group 'pulse'.
> Using existing group 'pulse-access'.
> ...



I fixed it with this:
sudo /usr/sbin/pwd_mkdb -p /etc/master.passwd

Indeed there was a minor updateto nvidia 340!


----------



## SirDice (Aug 3, 2021)

multix said:


> I fixed it with this:
> sudo /usr/sbin/pwd_mkdb -p /etc/master.passwd


Yep, that's a good solution. You can get that "user '<someuser>' disappeared during update" from time to time, I get them too. Still no idea what causes it, only know how to solve it quickly.


----------



## multix (Aug 3, 2021)

Fine. Now that everything upgraded, I confirm nvidia 340 drivers load. I do not have a nice console, but X11 comes up and seems usable.
Acceleration has issues, e.g. when running webgl samples tests in firefox, some shapes are black. I believe this used not to happen, but I have no proof  I will stress it more, including things like suspend, youtube, etc.

For 304 I suppose not much can be done, being a binary? If it looks for an old X11 version...


----------



## SirDice (Aug 3, 2021)

multix said:


> For 304 I suppose not much can be done, being a binary?


Nope. NVidia stopped supporting that version a long, long time ago. The 340 and 390 versions aren't supported anymore either, only the x11/nvidia-driver (which is now at 460.something) is actively maintained. I think the lowest card that's still supported by the new driver is the Geforce 600 series. If I recall correctly the cut-off point seems to be around 10 years, which is honestly quite a long time for hardware to be supported.


----------



## grahamperrin@ (Aug 7, 2021)

SirDice said:


> … You can get that "user '<someuser>' disappeared during update" from time to time, I get them too. Still no idea what causes it, …



FreeBSD bug 232921 – freebsd-update upgrade does not execute pwd_mkdb for ntpd

freebsd-update: unconditionally regenerate passwd/login.conf files


----------



## grahamperrin@ (Aug 7, 2021)

multix said:


> … a table of compatibility …



We have (amongst other things): 

Appendix A. Supported NVIDIA GPU Products
Unix Drivers | NVIDIA
– however (according to pages such as those) there are NVIDIA products that are neither supported, nor legacy. So a table of compatibility might be difficult to create and maintain.


----------

