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

multix

Member

Reaction score: 2
Messages: 76

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 goodBroken
30412.112.2 Xorg ABI incompatible
34012.213.0 - kld does not load
39013.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

Administrator
Staff member
Administrator
Moderator

Reaction score: 12,685
Messages: 39,278

The 390 version should still work:
Code:
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.

. 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.
 
OP
multix

multix

Member

Reaction score: 2
Messages: 76

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'.
Using existing group 'pulse-rt'.
===> Creating users
Creating user 'pulse' with uid '563'.
pw: user 'pulse' disappeared during update
pkg: PRE-INSTALL script failed

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

Indeed there was a minor updateto nvidia 340!
 

SirDice

Administrator
Staff member
Administrator
Moderator

Reaction score: 12,685
Messages: 39,278

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.
 
OP
multix

multix

Member

Reaction score: 2
Messages: 76

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

Administrator
Staff member
Administrator
Moderator

Reaction score: 12,685
Messages: 39,278

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.
 
Top