FBSD nvidia 8800gt + blob = freeze

d4mi4n

volksoperator on duty
[solved] FBSD nvidia 8800gt + blob = freeze

hi,
ich hatte es mal in einem anderen Thread angesprochen:

meine System hängt sich mit dem aktuellen Nvidia Treiber sofort nach einem startx
auf. Der Lüfter dreht laut plötzlich lauter, keine Festplattenaktivität mehr, schwarzer
Bildschirm zeigt sich.
VErbaut ist eine MSI NX8800GT-T2D512E-Zilent.
Mit dem nativen nv habe ich keinerlei Probleme.
Der ältere 169.07 ist der erste, der den 8800GT Chip unterstützt. Wenn ich diesen Treiber
benutze komme ich zum gleichen Ergebnis.
In den Logs gibt es keine Einträge vom Zeitpunkt nach dem Start von X.

Der einzige Thread, den Google ausspuckt, der ansatzweise mit meinem Problem zu tun
hat, ist dieser.
Dort geht es um eine 8800GTS, der Support für die 8800GT wurde jedoch viel später
implementiert. Habe den Treiber ausprobiert und meine Karte wurde nicht erkannt.

compat5x sowie die Linuxkompatibilität sind vorhanden und "geladen".

Die Karte wird korrekt erkannt.

Hat irgendjemand einen Anhaltspunkt?
Wenn nötig liefere ich natürlich genauere Infos, wenn jemand Configs sehen will.

Ich nutze FreeBSD 7 Stable (bei 7 Release und 6.3 Release das gleiche Problem).
xorg und die ganzen deps sind auf neustem Stand.

Bitte kein "verzichte auf 3D" oder "kauf dir ne andere Karte" oder gar "spiel halt nur unter
Windows". Ich möchte wenigstens ansatzweise versuchen das problem zu beheben,
wenns absolut nicht möglich ist sehe ichs ein mein Windows weiterhin nebenbei zu nutzen
:D
 
Zuletzt bearbeitet:
Also, ich habe zwar keine 8800er sondern ne alte 6600er aber bei mir tut der blob in selbiger Versionen seinen Dienst Problemlos. Installiert habe ich das offizielle release von der NVidia Seite, nicht den aus den Ports.. muss man halt in ner Header Datei auskommentieren dass er nicht auf FreeBSD 7 läuft..
Bei mir ist es 7 Release.. tut aber problemlos.

Es sind Stabilitätsprobleme mit dem Treiber auf SMP Systemen bekannt, daher empfehle ich dir den Treiber nochmal bei NVidia Runterzuladen.. und den Beta Treiber gleich mit. Dann gehst du dort.. afaik im src Verzeichnis in die Dazei nv-freebsd.h und editierst dort die Paar Zeilen wo angegeben ist dass er auf FreeBSD 7 ne Fehlermeldung bringen soll dass es nicht unterstützt wird aus und probierst die mal beide.
Aus den Ports wollte er bei mir nichtmal sauber durchkompilieren..

Edit: http://www.nvnews.net/vbulletin/showthread.php?t=99604 <--- dieser Patch kann das Problem auch für dich beheben.
 
Zuletzt bearbeitet:
meine System hängt sich mit dem aktuellen Nvidia Treiber sofort nach einem startx
auf. Der Lüfter dreht laut plötzlich lauter, keine Festplattenaktivität mehr, schwarzer
Bildschirm zeigt sich.
Welchen AGP Modus benutzt Du?
 
MuffiXXL:
Genau.
Mit einer 6800Ultra hatte ich vor dem Umrüsten keine Probleme.
Danke für den Link ich schaus mir mal an.
 
Benutze ne 8800GTX, keinerlei Probleme mit den Treibern, nur beim 169.07 läuft der Lüfter immmer auf vollen Touren.

Schonma den 169.12 probiert?

evtl. liegts ja auch am "neueren" G92 Chip?!
 
169.12 ist doch der Aktuelle oder?
Den hatte ich dann shcon ausprobiert.
Den Patch konnte ich vorhin nicht mehr testen, da ich mal wieder ins Büro musste.
Wäre echt klasse wenn die Kiste mal ordentlich läuft.
 
BETA nvidia-driver-171.06, zwei diffs für Port

Hallo d4mi4n,

Du könntest eventuell mal den BETA nvidia-driver-171.06 ausprobieren:
http://www.nvidia.com/object/freebsd_171.06.html

Falls Du den nvidia-driver-171.06 über die Ports bauen möchtest,
habe ich mal zwei patches hochgeladen:
[Makefile-171.06.diff]
http://bsdpaste.bsdgroup.de/797
[distinfo-171.06.diff]
http://bsdpaste.bsdgroup.de/798
Die diffs kann man in:
Code:
/usr/ports/x11/nvidia-driver/
speichern und mit patch anwenden.
Ein Backup des Orginals wird als Makefile.orig
und distinfo.orig gespeichert.
Vom nächsten csup werden
die gepatchten Dateien wieder überschrieben!
(Aber man kann ja das nvidia-driver Paket auf HOLD stellen)

Bei mir tut es der BETA nvidia-driver-171.06
via Port installiert. Mehr als die Versionsnummer
angelupft und die distinfo angepasst, ist es ja im Port auch nicht. ;)

Meine Grafikkarte ist aber eine AGP Karte,
genauer: eine Geforce 7800 GS von Gainward.

In den /boot/device.hints
habe ich folgendes drin:
Code:
#-----------------------------------------------------------------------------------
# Nvidia Driver
#-----------------------------------------------------------------------------------
hint.agp.0.disabled="1"

Und in der /boot/loader.conf
folgendes für den nvidia-driver:
Code:
#-----------------------------------------------------------------------------------
# Nvidia Driver
#-----------------------------------------------------------------------------------
acpi_video_load="YES"		# Load the ACPI video extension driver
nvidia_load="YES"

Zusätzlich pimpe ich noch in der
/etc/sysctl.conf
für den nvidia-driver rum:
Code:
#-----------------------------------------------------------------------------------
# Nvidia Driver - Tuning
#-----------------------------------------------------------------------------------
hw.nvidia.registry.EnableAGPFW=1 	# 1 = Fast Writes aktivieren
hw.nvidia.registry.EnableAGPSBA=1 	# 1 = Side Band Addressing aktivieren

Außerdem verwende ich das Nvidia NVAGP,
Einstellung erfolgt über die xorg.conf:
Code:
Option         "NvAGP" "1"
Siehe auch:
http://us.download.nvidia.com/freebsd/171.06/README/chapter-09.html
Wohlgemerkt: das ist bei mir eine AGP Nvidia Grafikkarte,
wie sich das mit PCIe verhält, darfst Du mich nicht fragen,
ich habe gar keine PCIe Grafikkarte!

All dies ist selbstverständlich gänzlich auf eigene Gefahr,
es gilt:
rutschig wenn feucht!

Das ist ein BETA Treiber!


Ist bei Dir, außer der compat5x, auch die compat6x aktiv?
Ich habe bei mir diesbezüglich in der Kernelkonfiguration:
Code:
options 	COMPAT_43TTY				# BSD 4.3 TTY compat [KEEP THIS!]
options 	COMPAT_FREEBSD4				# Compatible with FreeBSD4
options 	COMPAT_FREEBSD5				# Compatible with FreeBSD5
options 	COMPAT_FREEBSD6				# Compatible with FreeBSD6
Außerdem habe ich auch noch dies hier in meiner Kernelkonfigureation:
Code:
#------------------------------------------------------------------------------------------------------------
# These three options provide support for System V Interface
# Definition-style interprocess communication, in the form of shared
# memory, semaphores, and message queues, respectively.
#------------------------------------------------------------------------------------------------------------
options 	SYSVSHM						# SYSV-style shared memory
options 	SYSVMSG						# SYSV-style message queues
options 	SYSVSEM						# SYSV-style semaphores


Gruß, Fusselbär
 
Zuletzt bearbeitet:
Fusselbär: Danke für den Tipp, probiert -> gleiche wie zuvor.

Edit: habe gerade gelesen, dass der Nvidia Treiber ein problem mit RAM von 4GB und mehr hat.
Werde nachher mal einen Riegel rausnehmen....
 
Zuletzt bearbeitet:
Es lag am RAM.....
Hatte zwar schonmal von vier (je 1GB) auf zwei Riegel reduziert, hatte nicht funktioniert.
Gerade eben beim Gehäuselüftertausch habe ich aus purem Blödsinn einen dritten Riegel wiedere hinzugesteckt und siehe da: ES GEHT!
 
@d4mi4n

...und ich hab mir gerade zusätzlichen Speicher bestellt :grumble: so dass ich auf insges. 4GB komme. Ich benutze auch den nvidia-driver...heißt das, dass ich mich entscheiden muss zwischen 4GB und dem nvidia-driver? Oder besteht eine geringe Chance, dass es mit 2x2GByte Riegeln geht?? ;'(
 
martin :D so gings mir ja auch.....

kann mir jemand sagen obs hier dran liegt?
This allocation of DMA system memory with malloc() is problematic
on FreeBSD i386 PAE and FreeBSD amd64 systems with more than 4GB of
RAM and older NVIDIA GPUs limited to 32-bit DMA, since malloc()
doesn't currently allow drivers to specify allocation constraints,
like contigmalloc() does, i.e. it may allocate physical memory that
can not be addressed by such GPUs.
 
Hui da bin ich ja froh dass ich mir das Alternate ZackZack Angebot die Tage nicht geholt habe *g* bei mir läuft mit 3gig RAM zum glück alles rund.
 
RAM abzwacken: BIOS Option VGA Shared Memory Size

Hallo,

mein System arbeitet noch mit AGP,
da lässt sich im BIOS einstellen, wieviel vom Arbeitspeicher
für die Grafikkarte abgezwackt wird.
Wenn ich mich richtig erinnere heißt die Option:
"VGA Shared Memory Size"
oder so ähnlich.

Die für diese BIOS Option eingestellte VGA Shared Memory Size
vermindert die Menge des im OS angezeigten Arbeitsspeichers.
Möglicherweise reicht es eventuell aus, eine für heutige Verhältnisse
geringe Menge RAM von z.B. 128 MB als VGA Shared Memory Size abzuzwacken,
um unter die für den nvidia-driver Blob magische Grenze von vollen 4 GB zu kommen?

Ob es so etwas im BIOS von neueren Mainboards
mit PCIe Grafikkarteneinschub noch gibt,
dürft ihr mich nicht fragen,
weil ich so altes bewährtes Zeug verwende. :ugly:


Gruß, Fusselbär
 
@d4mi4n

...und ich hab mir gerade zusätzlichen Speicher bestellt :grumble: so dass ich auf insges. 4GB komme. Ich benutze auch den nvidia-driver...heißt das, dass ich mich entscheiden muss zwischen 4GB und dem nvidia-driver? Oder besteht eine geringe Chance, dass es mit 2x2GByte Riegeln geht?? ;'(

bei mir gehen 4GB / 2x2GByte + nvidia Treiber
 
Moin

so RAM sind heute vormittag angekommen und da hab ich mich gleich an die Arbeit gemacht. System komplett platt gemacht und FreeBSD7.0 amd64 von CD installiert. Soweit so gut. Dann hab ich mit (noch) altem Scheduler gnome über die packages installieren wollen, mit pkg_add -r gnome2 und siehe da.... Core dump nach ca. 5Min. Selbes Problem bei einem 2ten Versuch! Dann einen Riegel rausgenommen, mit 3GByte lief alles problemlos durch. Hat FreeBSD7 denn allgemein Probleme mit über 4GByte RAM, also nicht nur in Zusammenhang mit dem nvidia-driver???
 
Nein, das ist mir schon klar, dass das (noch) nicht geht.
Mir ist das Ding ja um die Ohren geflogen beim Bauen von Gnome und nicht bei nvidia.
 
sorry Leute für meine ständigen Postings, aber es lag wohl am Speicher selbst. Der gerade heute neu eingetroffene Speicher ist nämlich defekt!!! :grumble:
Das hab ich jetzt nach stundenlangem rumfummeln rausgefunden ;'(
 
Vier Gigabyte RAM und i386 ist zwar eigentlich möglich, aber es halt deshalb problematisch, da diese RAM-Mengen niemals vorgesehen waren. Ggesamtadressraum sind 4 Gigabyte, den sich der Speicher mit Dingen wie PCI-Register, dem BIOS und so weiter teilen muss. Daher kann es schon mal knallen, auch wenn es nicht sollte.
 
Zurück
Oben