Hallo,
ich habe ein Rechner mit VIA KM266 Chipsatz, AthlonXP 2000+ und Debian unstable
am laufen. Im Chipsatz integriert ist eine ProSavage Grafikkarte.
Das System hat 512 MB RAM, davon zwackt die Grafikkarte 32 MB ab.
AGP-Aperture ist auf 32 MB eingestellt.
Nach dem Rechnerstart läuft alles perfekt,auch DRI funktioniert einwandfrei.
Erst nachdem sich ein Benutzer abmeldet, kommt es zum Gau.
Beim Neustart des X-Servers bleibt alles schwarz, selbst die Textkonsolen sind
nicht mehr erreichbar.
Scheinbar schießt der savage Treiber DRM ab.
In Xorg.log tauchen folgende Zeilen auf:
(II) SAVAGE(0): [drm] removed 1 reserved context for kernel
(II) SAVAGE(0): [drm] unmapping 8192 bytes of SAREA 0xe0c17000 at 0xa7903000
Backtrace:
0: /usr/bin/X(xf86SigHandler+0x81) [0x80c8591]
1: [0xffffe420]
2: /usr/lib/xorg/modules/drivers//savage_drv.so(SavageGEReset+0x35d)
[0xb7c1dc5d]
usw.
Mir drängt sich nun der Eindruck auf, agpgart bzw. Xorg wildern im falschen
Speichebereich herum:
dmesg liefert:
agpgart: Detected VIA PM266/KM266 chipset
agpgart: AGP aperture is 32M @ 0xe0000000
xorg.log hingegen:
(==) SAVAGE(0): Using 32 MB AGP aperture
(==) SAVAGE(0): Write-combining range (0xd0000000,0x8000000)
/proc/mtrr enthält:
reg00: base=0x00000000 ( 0MB), size= 512MB: write-back, count=1
reg01: base=0x1e000000 ( 480MB), size= 32MB: uncachable, count=1
reg05: base=0xe0000000 (3584MB), size= 32MB: write-combining, count=1
bzw nach Start von X:
reg00: base=0x00000000 ( 0MB), size= 512MB: write-back, count=1
reg01: base=0x1e000000 ( 480MB), size= 32MB: uncachable, count=1
reg02: base=0xd0000000 (3328MB), size= 128MB: write-combining, count=1
reg05: base=0xe0000000 (3584MB), size= 32MB: write-combining, count=1
Läuft der X-Server Amok, indem er sich einfach neue
Speicherbereiche “ausdenkt”? agpgart liefert schließlich als Basisadresse
0xe0000000, während der X-Server auf 0xd0000000 besteht.
Oder bin ich komplett auf dem Holzpfad?
Die Option “NoMTRR” in xorg.conf bringt auch keine Abhilfe.
Ich bin für jede Hilfe dankbar
mfg
Rico
Im Bios lassen sich maximal 32 MB einstellen. Habe da auch alle Kombination
aus Grafikspeicher und AGP-Aperture durchgetestet.
Interessant ist auch, wenn ich weniger als 32 MB Speicher einstelle, meldet
agpgart, dass die Grafikkarte in den Modus 0x geschalten wird.
Das Problem tritt übrigens bei allen Kerneln 2.6.20.x und 2.6.21.x ständig
auf. Bei älteren Kerneln trat er, wenn ich mich recht entsinnen kann, eher
sporadisch auf.
mfg
Rico
Nach langem Probieren habe ich nun eine Möglichkeit gefunden, das Problem
zumindest teilweise zu umschiffen, indem ein Neustart des Xservers nach dem
Abmelden erzwungen wird.
Dazu muss der Eintrag
TerminateServer=true
in die Sektion [X-*-Core]
der kdm-Konfigurationsdatei /etc/kde3/kdm/kdmrc geschrieben werden.
Allerdings ist ein Wechsel in die Textkonsole weiterhin nicht möglich.
mfg
Rico