DLT 2000XT an *BSD

erisch

Gestörter
Hallo

Ich habe folgendes Problem.

Ich hab einen Pentium II/266 mit OpenBSD 3.6 (unter NetBSD 2.0 passiert genau das Gleiche) und einem DLT2000XT
Bandlaufwerk an einem Dawicontrol DC-2964 Fast SCSI Controller und 2
UDMA/33 Platten.

dmesg:

OpenBSD 3.6 (GENERIC) #59: Fri Sep 17 12:32:57 MDT 2004
deraadt@i386.openbsd.org:/usr/src/sys/arch/i386/compile/GENERIC
cpu0: Intel Pentium II ("GenuineIntel" 686-class, 512KB L2 cache) 267
MHz
cpu0: FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,MMX
real mem = 66625536 (65064K)
avail mem = 53272576 (52024K)
...
wd0 at pciide0 channel 0 drive 0: <IBM-DCAA-33610>
wd0: 16-sector PIO, LBA, 3445MB, 7056000 sectors
wd0(pciide0:0:0): using PIO mode 4, DMA mode 2
wd1 at pciide0 channel 1 drive 0: <ST33210A>
wd1: 16-sector PIO, LBA, 3098MB, 6346368 sectors
wd1(pciide0:1:0): using PIO mode 4, Ultra-DMA mode 2
...
pcscp0 at pci0 dev 8 function 0 "AMD 53c974 PCscsi-PCI" rev 0x10: irq 11
pcscp0: AM53C974, 40MHz, SCSI ID 7
pcscp0: SCSI bus reset
scsibus0 at pcscp0: 8 targets
st0 at scsibus0 targ 5 lun 0: <DEC, DLT2000 15/30 GB, 840B> SCSI2
1/sequential removable
...


Nun besteht das Problem, dass das DLT nicht durchstreamt. Es kommt
ständig ins stocken und muss zurückspulen. Dadurch geht mir irgendwann
der Motorcontroller in die Asche.
Das DLT bekommt also nicht genug Daten (es müssen am Ende konstant
1,25MB/sek aufs Band geschrieben werden, es geht weder schneller noch
langsamer). Die Kompression ist ausgeschaltet.
Die Platten liefern min 5MB/s (getestet durchs Netzwerk), der
SCSI-Anschluss des DLTs schafft eh nur maximal 5 MB/s.
Ich hab alles Mögliche versucht, mit Shared Memory Puffern und
ähnlichem, aber es brachte alles nix.
Dann habe ich es mal mit einem alten Fedora Linux versucht, dort streamt
das Teil 150-200MB am Stück bevor es das erste Mal ins stocken kommt
(und das ohne Puffer).
Jetzt weiß ich nicht woran es noch liegen soll, dass es unter OBSD nicht
geht. Gut, 64 MB RAM ist nicht viel (kommt noch mehr rein) aber Fedora
hat den RAM komplett ausgelastet und es funktionierte, bei OBSD ist die
Hälfte noch frei. Ist vllt der Treiber für den AMD 53c974 SCSI
Controller nicht ausgereift?
Recherchen ergaben, dass der 53c974 Treiber vllt kein mmap/dma unterstützt. Kann da jemand was zu sagen, ich hab im Netz nichts gefunden, was diese Thematik behandelt. Es gibt nur tausende Seite die aussagen, dass der 53c974 unterstützt wird.

Bin für jeden Hinweis dankbar.

Mfg. Erisch
 
Hi

Hab bei nem Kunden so ein ähnliches Problem mit einem DLT gehabt.
Ich habs dann dadurch weg bekommen, dass ich die Block-Size beim tar erhöht habe.

Default 512byte
auf 2048byte erhöht

tar -cvpbf .... bin boot home usr var ......

Vieleicht hilft das ja bei dir auch

mfg Hoschi
 
h0sch1 schrieb:
Hi

Hab bei nem Kunden so ein ähnliches Problem mit einem DLT gehabt.
Ich habs dann dadurch weg bekommen, dass ich die Block-Size beim tar erhöht habe.

Default 512byte
auf 2048byte erhöht

tar -cvpbf .... bin boot home usr var ......

Vieleicht hilft das ja bei dir auch

mfg Hoschi

Hat leider nix gebracht. Habs mit -b 4 (4x512B) versucht und auch mit größeren Werten. Jedesmal das gleiche Problem.

Mfg. Erisch
 
So, ich hab jetzt alle BSDs durchs ;)
Als letztes hab ich FreeBSD 5.3 versucht und siehe da es geht. Warum? NetBSD und OpenBSD benutzen den pcscp Treiber für AMD 53c974 basierte Karten, FreeBSD hat aber einen Treiber namens amd der von Tekram kommt. Und mit diesem Treiber scheint das DMA zu funktionieren.

Da mir aber der Kugelfisch so gefällt: Ist es möglich den FreeBSD Treiber mit OpenBSD zu benutzen? Gibt es ne Möglichkeit den als Modul in den Kernel zu integrieren? Ich bin recht neu bei BSD, da ich mich aber möglichst mit jedem Unix mal beschäftigen möchte, wollte ich meinen BackupServer mit BSD betreiben, vorzugsweise mit OpenBSD.
Aber wenn es nicht gehen soll, komm ich auch mit FreeBSD aus ;)

Mfg. Erisch
 
Zurück
Oben