Conrad HFC-S Interrupts

mykro

Neuer User
Mitglied seit
20 Nov 2005
Beiträge
14
Punkte für Reaktionen
0
Punkte
0
Hallo,

hier erst mal die Daten von meinem Rechner.

ISDN Karte: Conrad HFC-S
Prozessor: Pentium 3 600 MHz
Board: Asus P3B-F mit 100 MHz Systemtakt
RAM: 320 MB PC-100
Platte: Hitachi Microdrive am primären IDE Controller
Ethernet: Realtek 8139C
WLAN: Allnet 0271 PCI
Grafikkarte: Trident 1 MB Grafikspeicher am ISA Bus

System: Linux 2.6.16.9 (selbst gebaut) auf Debian Linux (testing)
Bristuff: 0.3.0-PRE-1l

Nun zu meiner eigentlich Frage. Ich habe das zaptel und das zaphfc Modul kompiliert und letzteres mit modes=1 geladen, danach ztcfg -vvvv ausgeführt. Sowas alles gut. Aber nach kurzer Zeit wird das syslog mit der Fehlermeldung überschwemmt, dass die Karte out of sync ist und der PCI Bus zu langsam ist (ihr kennt die Meldung sicher, ich habe sie leider nicht zum Pasten verfügbar). Ich habe daraufhin die Logbefehle aus dem Treiber auskommentiert und den modifizierten Treiber dann geladen. Jetzt bekomme ich zwar keine Fehlermeldungen mehr, aber die Performance ist immer noch schlecht. Getestet habe ich das mit dem Tool zttest, was bei dem zaptel Package dabei ist. Das Ding zeigt mir immer Werte zwischen 97,5 und 98 % an, was wohl nicht ausreicht (ich habe gelesen, man braucht mindestens 99,7). Zur Behebung des Problems schon einige Schritte angestellt:
- das Microdrive lief nicht mit DMA, läuft es immer noch nicht, aber es ändert auch nichts, wenn ich eine normale Platte nehme, die im DMA Modus läuft
- ich habe die IRQs manuell eingestellt, sodass die HFC Karte einen eigenen Interrupt mit hoher Priorität (Interrupt 8) hat
- ich habe alle anderen Karten ausgebaut und nur die HFC Karte alleine betrieben (+ Grafikkarte)
- ich habe statt der ISA eine PCI Grafikkarte getestet und den Kernel komplett ohne ISA kompiliert
- ich habe den Systemtakt leicht erhöht (und wieder gesenkt, weil es nichts gebracht hat). Selbst der Unterschied zwischen 66 und 100 MHz hat sich nicht bemerkbar gemacht.

Der Load des Systems bewegt sich immer unterhalb 0.1 (meist nicht viel von 0.0 weg). Hier noch der Kernel-Log-Output:

Zapata Telephony Interface Registered on major 196
Zaptel Version: Echo Canceller: KB1
zaphfc: no version for "zt_receive" found: kernel tainted.
zaphfc: CCD/Billion/Asuscom 2BD0 configured at mem 0xd4828000 fifo 0xd3748000(0x13748000) IRQ 9 HZ 250
zaphfc: Card 0 configured for NT mode
zaphfc: 1 hfc-pci card(s) in this box.

Hier fehlen natürlich die ganzen (periodischen) Fehlermeldungen, die ich auskommentiert habe:
//printk(KERN_CRIT "zaphfc: bchan tx fifo full, dropping audio! (z1=%d, z2=%d)\n",*z1,*z2);
//printk(KERN_CRIT "zaphfc: bchan rx fifo not enough bytes to receive! (z1=%d, z2=%d, wanted %d got %d), probably a buffer o
verrun.\n",*z1,*z2,ZT_CHUNKSIZE,bytes);
//printk(KERN_CRIT "zaphfc: dropped audio (z1=%d, z2=%d, wanted %d got %d, dropped %d).\n",*z1,*z2,count,bytes,drop);
//printk(KERN_CRIT "zaphfc: sync lost, pci performance too low. you might have some cpu throtteling enabled.\n");

Das hier vielleicht noch:
gamma:~# cat /proc/interrupts
CPU0
0: 3964693 XT-PIC timer
2: 0 XT-PIC cascade
4: 263116 XT-PIC eth1
7: 15053 XT-PIC eth0
8: 4 XT-PIC rtc
9: 2582848 XT-PIC zaphfc
14: 256207 XT-PIC ide0
NMI: 0
LOC: 0
ERR: 0
MIS: 0

Und lspci:
amma:~# lspci
0000:00:00.0 Host bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (rev 03)
0000:00:01.0 PCI bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (rev 03)
0000:00:04.0 ISA bridge: Intel Corporation 82371AB/EB/MB PIIX4 ISA (rev 02)
0000:00:04.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01)
0000:00:04.2 USB Controller: Intel Corporation 82371AB/EB/MB PIIX4 USB (rev 01)
0000:00:04.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 02)
0000:00:09.0 Network controller: Intersil Corporation Intersil ISL3890 [Prism GT/Prism Duette] (rev 01)
0000:00:0a.0 Network controller: Cologne Chip Designs GmbH ISDN network controller [HFC-PCI] (rev 02)
0000:00:0c.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)

Den Treiber für den USB-Controller habe ich erst garnicht kompiliert geladen (wird nicht benutzt und belegt daher auch keinen Interrupt).

Jetzt stehe ich vor dem Problem, dass ich nicht mehr weiter weiß. Ist vielleicht der Rechner einfach zu langsam? Ich habe schon gelesen, dass es auch verschiedene Patchs gibt, aber leider keinen Überblick welche und was sie bewirken. Ebensowenig bin ich mir sicher, ob ich nicht an dem Kernel etwas falsch gemacht habe. Gibt es spezielle Optionen, die die PCI Performance nachhaltig beeinflussen? Oder gibt es bestimmte Hardware, die ich keinesfalls einsetzen sollte? Ich bin mit meinen Ideen ziemlich am Ende und würde mich freuen, wenn mir jemand einen Tipp geben könnte, ich bin für alles dankbar!

Gruß

C. Kling
 
-- florz Patch hat das Problem gelöst!

Gruß
 
Kostenlos!

Statistik des Forums

Themen
248,878
Beiträge
2,303,775
Mitglieder
378,546
Neuestes Mitglied
Looki_Luzi