NVidia driver misbehaving on FreeBSD
I have now tried every combination that I could come up with and find on the FreeBSD
mailing-list, unofficial FAQs etc etc. I have tried getting the driver to work on both STABLE
and CURRENT with the exact same result on both. I have a GeForce2/GTS.
2D wise the nVidia driver seems to work great, my system has been up for 9 days without a
single problem with X. But as soon as I use nvidias OpenGL drivers strange things start
I have tried the following:
I have lowered the maximum allowed AGP rate in the BIOS from 4 to 2. (I have a via 694X chipset)
I have tried using FreeBSD's agpgart as well as using nvidias, when using FreeBSD's I changed
the #undef to #define in nv-freebsd.h. When using nvidias I have had agp.ko unloaded.
I also tried enabling the ReqAGPRate sysctl so that I was able to change it to set the speed to
2 and 1. I've also tried disabling AGP by adding option "NvAgp" "0" to my XF86Config.
I have also recompiled my kernel and XFree86 without any CPUTYPE or CFLAGS in /etc/make.conf
glxinfo seems to return correct information. I have checked to make sure I have no libGL from
Mesa etc, I have checked the existing libGL to make sure it was nvidias.
I have option "IgnoreEDID" in my XF86Config in order to be able to use 1400x1050, this was never
a problem in Linux but could this cause OpenGL to act up?
I am not loading dri and I see no errors or relevant warnings in /var/log/XFree86.0.log
I'm attaching 3 truss outputs from when glxgears failed (I hope they are useful). In ginfo.log
and ginfo3.log the computer just hung. I had to reboot with reset, when I ran CURRENT it would
hang for about 5 seconds than automatically reboot. With ginfo2.log glxgears just segfaulted.
glxinfo also caused the machine to hang once.
(the logs are gzipped, my uuencode seems broken)
Two times the reboots caused data corruption, one time it even seemed to have broken gcc (I was
compiling code at the same time as running glxgears). When trying to use gcc afterwards it would
fail with "internal compiler error...". As far as I could tell it only corrupted open files.
I have searched /var/log after crashes but I never found anything relating to nvidia or agp etc.
sysctl -a|grep nvidia returns:
hw.nvidia.agp.host-bridge.rates: 2x 1x
hw.nvidia.agp.host-bridge.fw: not supported
hw.nvidia.agp.card.rates: 4x 2x 1x
hw.nvidia.agp.card.sba: not supported
hw.nvidia.version: NVIDIA FreeBSD x86 nvidia.ko Kernel Module 1.0-3203 Wed Oct 30 06:06:58 PST
2002 hw.nvidia.registry.ReqAGPRate: 4
hw.nvidia.cards.0.model: GeForce2 GTS
More info please
I'm running FreeBSD 4.7 STABLE and have a GeForce4 MX440 in a board with a Via chipset (not sure which), OpenGL apps don't work for me either. Or, to be more precise some work and some other don't.
Please post the results of 'ls -l /usr/X11R6/lib/*GL*', 'ls -l /dev/nvidia*' and of 'ldd /usr/X11R6/bin/glxgears'
Maybe we can solve this puzzle together
Seems my closest bet is the failure to detect my AGP chipset:
This should be something like:
hw.nvidia.agp.status.driver: freebsd (agp.ko)
I know linux's agpgart had problems with my chipset as well. I had to use a module option to force it to detect it.
I'm gonna have a look at the FreeBSD agpgart implementation when I get around to it.
My library ouputs wont help you as I've replaced nvidias libraries with Mesa 5. I need OpenGL in order to work and I can't have a system that hangs every 5 minutes. But as I said, I had the correct libraries installed when I tried, I had no stale libraries from another package. And glxgears is linked against libGL.so.1 as the new standard specifies.
I may be wrong in this one but I think nVidia's Makefile is broken and it doesn't check whether or not nv-freebsd.h has been modified. If you just modified it and 'make setup' you may had installed the module wich uses nVidia's AGP. Try to 'make clean', modify nv-freebsd.h and then 'make setup'. Failure to detect your hardware is may be caused by this.
Hope it helps.
I solved the problem. It turned out the kernel did not have the ID for my chipset (Via 82C694X - Apollo Pro 133A). Since the kernel supports Apollo Pro and 694X just adds the 133MHz Bus afaik I assumed it would be safe to add the ID.
Now I have perfect OpenGL in FreeBSD =D. (I have posted this to the freebsd-stable mailinglist hoping that it will go into CURRENT and eventually into STABLE).
|All times are GMT -5. The time now is 04:02 AM.|
Powered by vBulletin® Version 3.7.1
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Copyright ©1998 - 2014, nV News.