Nvidia incompatible ABI

I upgraded all my packages this morning. Included in that was x11/xorg. This generated this error in /var/log/Xorg.0.log
Code:
This server has a video driver ABI version of 25.2 that this
driver does not officially support.  Please check
[URL]http://www.nvidia.com/[/URL] for driver updates or downgrade to an X
server with a supported driver ABI.

My nvidia card is an old 9600GT which uses the legacy driver x11/nvidia-driver-340. Apparently the change in x11/xorg makes it incompatible.

To fix this, you need to add this to /usr/local/etc/X11/xorg.conf.d/driver-nvidia.conf

Code:
Section "ServerFlags"
        Option "IgnoreABI" "true"
EndSection

Then startx
 
Dear mefizto,
I have a /etc/X11/xorg.conf which has been generated by the nvidia config tool a long time ago. I have copied the code provided in the original post to that file. That worked for me. Nowadays arranging the configuration in /usr/local/etc/X11/ is recommended.
 
Hi chrbr,

thank you for the reply.

I had always used the /usr/local/etc/X11/xorg.conf.d/, so that should not be a problem. And I did copy the code provided by drhowarddrfine. (Actually, I found it on-line before he posted, but it makes no difference).

Are there any negative consequences to downgrading the server? I cannot have a nice laptop to become a paperweight. But the lesson is - no more NVIDIA.

Kindest regard,

M
 
Are there any negative consequences to downgrading the server?
I think currently there are no consequences because it has been working in the past. But there will be a point in time when the previous X-server is no more compatible with the other FreeBSD packages. It might be that the legacy NVIDIA driver will not work anymore, too.

On my system I am currently using I will check how the build in graphics works. I am also not sure if it is the i915 driver which is required or a different one. At least the VESA driver works. With the VESA driver the resolution is limited.


But the lesson is - no more NVIDIA.
May be this is more related to old hardware. Here I have only 2nd hand computers or computers other people to not want to use anymore. For my requirements the old stuff is still good enough. of curse in case the hardware is more or less new it is a bad surprise if the support would be discontinued.
 
Hi chrbr,

thank you for the reply.

I think currently there are no consequences because it has been working in the past. But there will be a point in time when the previous X-server is no more compatible with the other FreeBSD packages. It might be that the legacy NVIDIA driver will not work anymore, too.
That was, indeed, my concern. What I am surprised though, that the code did not work. Albeit I have a different hardware - NVS 3100M, it is my understanding that the issue is with the driver itself.

Here I have only 2nd hand computers or computers other people to not want to use anymore.
Ha, ha, same here, but this was an exceptional purchase, so I will be sad if I cannot make it work.

Kindest regards,

M
 
Are there any negative consequences to downgrading the server? I cannot have a nice laptop to become a paperweight. But the lesson is - no more NVIDIA.
I believe security and hardware compatibility are the common reasons. Obviously the latter is not the case when it comes to older hardware.

An old Xorg in a chroot / jail to match the driver is probably not so much of a security issue since Xorg doesn't even listen on a TCP/network these days (it is all UNIX domain sockets).

So you could run an Xserver from the old chroot but connect recent applications to it. It is possibly a bit of a Frankenstein (his monster at least) but likely possible.

Another option is to build an older Xorg from an older ports collection snapshot (into a different directory via LOCALBASE, i.e /usr/local2020) and use that. It could be a little bit of work however.
 
Hi kpedersen,

thank you for your reply.

An old Xorg in a chroot / jail to match the driver is probably not so much of a security issue since Xorg doesn't even listen on a TCP/network these days (it is all UNIX domain sockets).
Regretfully, I have no idea what you are proposing, much less how would I implement your proposal. So, I will just downgrade the X-server and hope for the best.

Kindest regards,

M
 
[...] URL unfurl="true"]https://nvidia.custhelp.com/app/answers/detail/a_id/3142/[/URL]
Thanks for the support timeframes.

So, that means, unless I'm very mistaken, that my Geforce 9200M GS will, in all likelyhood, go from limping to totally unworkable, rendering my faithfull—old, yes you may designate it equally well as very old but, with a very nice keyboard—Q210 laptop X-less. Currently, after the appreciated opening message, my X-graphics rendering went from very usable to limping mode. Startup takes noticable longer and more importantly all sorts of defects in the rendering of indivudual applications frame borders and mouse rendering make it almost unusable with Xfce.

I tried getting things working with version 2.5.0_1 of x11-drivers/xf86-video-vesa/ but it won't even kldload. I'd be happy with a slower, non-accellerated, vesa working. Perhaps, the only option would be to built an older X ...
 
So, that means, unless I'm very mistaken, that my Geforce 9200M GS will, in all likelyhood, go from limping to totally unworkable, rendering my faithfull—old, yes you may designate it equally well as very old but, with a very nice keyboard—Q210 laptop X-less.
That will eventually happen when Xserver keeps moving forward. Already happened to x11/nvidia-driver-304, that version is broken and doesn't work anymore with a recent version of Xserver.


I tried getting things working with version 2.5.0_1 of x11-drivers/xf86-video-vesa/ but it won't even kldload
There's nothing to kldload(8) here. Port/package contains an Xorg driver, not a kernel module.
 
Would it be worth requesting an Xorg-legacy port? I suppose you would need an xlib-legacy, xcb-legacy, xproto-legacy, xinit-legacy, (etc, etc...) for everything since it went modular.

I would actually love to get Xeoncara in there. Less unnecessary library dependency hooks and a cleaner build system. That would be easier to control multiple versions. A couple of Linux distros and NetBSD (in pkgsrc, along with modular-xorg-server) has it, so it may not be tied too tightly to OpenBSD.
 
Regretfully, I have no idea what you are proposing, much less how would I implement your proposal. So, I will just downgrade the X-server and hope for the best.
Hah, admittedly it is a faff and likely not worth your time. But if you are interested, to create a jail, check out:

https://freebsdfoundation.org/freebsd-project/resources/introduction-to-freebsd-jails/
https://docs.freebsd.org/en/books/handbook/jails/

(Remember to use an older FreeBSD release that matches the older xorg you are interested in running)

Then jump into it (via the jexec command or the simpler chroot), install Xorg and use the typical startx (fixing a few issues as you go relating to being inside a chroot).
 
Hi kpedersen,

thank you for the reply.

As I (barely) understand it, the jail/chroot idea is to ensure security protection using the older Xorg. I do not have enough knowledge to judge whether it is worth it or not, but my concern, cf. post # 6, was (i) stability of the system with the older Xorg and (ii) how to keep the older Xorg.

Regarding (ii) I have been building everything from source since I have some packages built with non-standard options, and I have read too many posts warning against mixing ports and packages.

Kindest regards,

M
 
Regarding (ii) I have been building everything from source since I have some packages built with non-standard options, and I have read too many posts warning against mixing ports and packages.
Indeed. Actually that is the whole point of the jail/chroot. Purely so that you can have a homogenous older version of the entire system running within a self contained environment purely to run the older Xserver.

That way, it shouldn't cause any collisions with your actual existing packages.

I commonly do this to run older versions of Gimp, Blender and OpenOffice (all of them got worse as they got older IMO).
 
Hi kpedersen,

thank you again for the reply.

Indeed. Actually that is the whole point of the jail/chroot. Purely so that you can have a homogenous older version of the entire system running within a self contained environment purely to run the older Xserver.
I think that we misunderstood each other. Item (ii) was meant to suggest that I do not know how/where do I obtain the older version of the Xorg/Xserver package.

Regarding your quote, I am confused due to my inability to grasp the the base OS to jails relationship, despite trying to understand jails many times.

Your previous post suggested to install Xorg/Xserver into the jail. However, my understanding of the jails is that they have to contain the entire OS base. So, that means that the machine will have an underlying OS (host) without the Xorg/Xserver and another OS (guest) with the Xorg/Xeserver in the jail? So, how would the base OS know to use the Xors/Xserver fom the jail? See the previous paragraph above.

Please do not waste more of your time with the issue; I will have to read about the jails another 100 times.

Kindest regards,

M
 
Please do not waste more of your time with the issue; I will have to read about the jails another 100 times.
Well if you do need further help after doing so, just let me know.

One hint is that if you extract the base.txz from an old .iso of FreeBSD, you can use that as a chroot or jail. Additionally, if you install packages using that chroot, it will fetch the older versions. I.e from 11, rather than 13, etc.

Happy researching! :)
 
Dear mefizto,
I have wondered how my NVIDIA could work if the ABI is incompatible. There is one item we have not compared. I run FreeBSD-12.3p6. How about you and drhowarddrfine, what do you run on the system which requires the old NVIDIA driver? Or is that ABI mismatch only related to X and not to the operating system, too?
Kind regards,
Christoph
 
It is a single card.
Something is odd than because Nvidia with M suffix is usually a mobile chipset.

I suppose it is possible they built PCIe desktop cards with that chipset.

Is this computer a laptop? What brand?
I cannot have a nice laptop to become a paperweight.

The reason I am asking is your conf file might need more settings for dual graphics machine.(CPU graphics+NVidia)
 
Back
Top