Am Sonntag, 16. November 2003 09:10 schrieb Rüdiger Meier
Hallo,
Du könntest ja nochmal folgendes probieren: hdparm -k 1 /dev/hdc hdparm -X 66 /dev/hdc hdparm -d 1 /dev/hdc
papa:/home/papa # hdparm -k 1 /dev/hdc /dev/hdc: setting keep_settings to 1 (on) keepsettings = 1 (on) papa:/home/papa # hdparm -X 66 /dev/hdc /dev/hdc: setting xfermode to 66 (UltraDMA mode2) papa:/home/papa # hdparm -d 1 /dev/hdc /dev/hdc: setting using_dma to 1 (on) HDIO_SET_DMA failed: Operation not permitted using_dma = 0 (off)
Ich bin immer sehr interessiert in Sachen DMA. Wenn Du noch ein wenig motiviert bist, schicke mir doch mal die kompletten ungekürzten Ausgaben der folgenden Befehle (Vielleicht sehe ich doch noch was):
/hdparm -iv /dev/hda /hdparm -iv /dev/hdb /hdparm -iv /dev/hdc /hdparm -iv /dev/hdd
papa:/home/papa # hdparm -iv /dev/hda /dev/hda: multcount = 16 (on) IO_support = 0 (default 16-bit) unmaskirq = 0 (off) using_dma = 0 (off) keepsettings = 0 (off) readonly = 0 (off) readahead = 8 (on) geometry = 4998/255/63, sectors = 80293248, start = 0 Model=Maxtor 6E040L0, FwRev=NAR61590, SerialNo=E1HF5CHE Config={ Fixed } RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=57 BuffType=DualPortCache, BuffSize=2048kB, MaxMultSect=16, MultSect=16 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=80293248 IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120} PIO modes: pio0 pio1 pio2 pio3 pio4 DMA modes: mdma0 mdma1 mdma2 UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5 *udma6 AdvancedPM=yes: disabled (255) WriteCache=enabled Drive conforms to: (null): 1 2 3 4 5 6 7 papa:/home/papa # hdparm -iv /dev/hdb /dev/hdb: multcount = 16 (on) IO_support = 0 (default 16-bit) unmaskirq = 0 (off) using_dma = 0 (off) keepsettings = 0 (off) readonly = 0 (off) readahead = 8 (on) geometry = 5005/255/63, sectors = 80418240, start = 0 Model=IC35L040AVER07-0, FwRev=ER4OA46A, SerialNo=SXPTXJV6384 Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs } RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=40 BuffType=DualPortCache, BuffSize=1916kB, MaxMultSect=16, MultSect=16 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=80418240 IORDY=on/off, tPIO={min:240,w/IORDY:120}, tDMA={min:120,rec:120} PIO modes: pio0 pio1 pio2 pio3 pio4 DMA modes: mdma0 mdma1 mdma2 UDMA modes: udma0 udma1 udma2 udma3 udma4 *udma5 AdvancedPM=yes: disabled (255) WriteCache=enabled Drive conforms to: ATA/ATAPI-5 T13 1321D revision 1: 2 3 4 5 papa:/home/papa # hdparm -iv /dev/hdc /dev/hdc: HDIO_GET_MULTCOUNT failed: Invalid argument IO_support = 0 (default 16-bit) unmaskirq = 0 (off) using_dma = 0 (off) keepsettings = 1 (on) readonly = 0 (off) BLKRAGET failed: Invalid argument HDIO_GETGEO failed: Invalid argument Model=DVD-ROM DDU1621, FwRev=VER S1.6, SerialNo= Config={ Fixed Removeable DTR<=5Mbs DTR>10Mbs nonMagnetic } RawCHS=0/0/0, TrkSize=0, SectSize=0, ECCbytes=0 BuffType=unknown, BuffSize=0kB, MaxMultSect=0 (maybe): CurCHS=0/0/0, CurSects=0, LBA=yes, LBAsects=0 IORDY=yes, tPIO={min:227,w/IORDY:120}, tDMA={min:120,rec:150} PIO modes: pio0 pio1 pio2 pio3 pio4 DMA modes: sdma0 sdma1 sdma2 mdma0 mdma1 mdma2 UDMA modes: udma0 udma1 *udma2 AdvancedPM=no papa:/home/papa # hdparm -iv /dev/hdd /dev/hdd: HDIO_GET_MULTCOUNT failed: Invalid argument IO_support = 0 (default 16-bit) unmaskirq = 0 (off) using_dma = 0 (off) keepsettings = 0 (off) readonly = 0 (off) BLKRAGET failed: Invalid argument HDIO_GETGEO failed: Invalid argument Model=PLEXTOR CD-R PX-W2410A, FwRev=1.02, SerialNo=775515 Config={ Fixed Removeable DTR<=5Mbs DTR>10Mbs nonMagnetic } RawCHS=0/0/0, TrkSize=0, SectSize=0, ECCbytes=0 BuffType=unknown, BuffSize=0kB, MaxMultSect=0 (maybe): CurCHS=0/0/0, CurSects=0, LBA=yes, LBAsects=0 IORDY=on/off, tPIO={min:180,w/IORDY:120}, tDMA={min:120,rec:120} PIO modes: pio0 pio1 pio2 pio3 pio4 DMA modes: sdma0 sdma1 sdma2 mdma0 mdma1 mdma2 UDMA modes: udma0 udma1 *udma2 AdvancedPM=no
more /etc/sysconfig/hardware
papa:/home/papa # more /etc/sysconfig/hardware ## Path: Hardware/IDE ## Description: IDE device settings ## Type: string ## Default: "" # # Force DMA mode for selected device. Use pairs <device>:<dma_mode> separated # by space - dma_mode can be "on" (enable default DMA mode), "off" (disable DMA # mode) or any mode supported by hdparm (e.g. "mdma2", "udma5", ...) # Example: "/dev/hdc:off /dev/hdd:udma2" # DEVICES_FORCE_IDE_DMA="" Hierzu sei geagt, daß ich die Datei wieder in den Urzustand versetzt habe
Vielleicht noch folgende Checkliste durchgehen:
- Guck auch mal in Deine /var/log/boot.msg ob da was auffälliges steht.
Ich bin nicht so viel Experte als das ich da Ungereimtheiten zuverlässig erkenne. Aber was ungewöhnliches würde mir dann doch auffallen. (Ich gehe davon aus, was SuSE8.2 bei der Installation einrichtet ist der Normalzustand)
- Verwendest Du für alle CD-Laufwerke SCSI-Emulation oder laufen manche
Ich verwende SCSI-Emulation für /dev/hdc & /dev/hdd d.h. für alle CD-Laufwerke
- In manchen BIOSen kann man DMA deaktivieren - nachgesehen?
ist aktiviert (udma2) bei beiden Laufwerken
- Wie ist der FSB getaktet?
weis ich nicht
- Sind die IDE Geräte alle richtig angeschlossen und gejumpert? Manchmal gibt es Probleme, wenn die Laurfwerke noch auf CableSelect statt auf - Master/Slave laufen.
Laufen als Master/Slave
Mit manchen Laufwerken/Mainboard Kombinationen kann man allerdings anstellen was man will und bekommt es nicht hin.
Grüsse, Rüdiger
Hallo, Am Sonntag, 16. November 2003 14:51 schrieb Karl-Heinz Gremm:
papa:/home/papa # hdparm -d 1 /dev/hdc HDIO_SET_DMA failed: Operation not permitted
Ist papa auch root?
/dev/hda: using_dma = 0 (off)
/dev/hdb: using_dma = 0 (off)
/dev/hdc: using_dma = 0 (off)
/dev/hdd: using_dma = 0 (off)
Keines Deiner Geräte läuft mit DMA! Bei den Festplatten sollte es auf jeden Fall standardmässig aktiviert sein, falls Du nicht mit nodma bootest. Vielleicht ist es auch nur deaktiviert worden, als Du versucht hast DMA für Dein (kaputtes?) DVD-LW zu aktivieren (als Folgefehler) Du solltest nochmal während des normalen Betriebs (ohne vorher etwas anderes mit hdparm zu machen) den DMA-Zustand Deiner IDE-Geräte ermitteln. Wenn DMA wirklich für alle Geräte während des Bootens (siehe /var/log/ boot.msg und /var/log/messages) oder später abgeschalten wird, lohnt es sich auf jeden Fall (insbesondere für Deine schnellen HDs) der Sache auf den Grund zu gehen. Es kann viele Ursachen geben z.B.: - zu schnell getimtes/getaktetes RAM - manche IDE-Geräte vertragen sich untereinander nicht - manchmal müssen Geräte am selben Kontroller mit den gleichen DMA-Modi betrieben werden - der Kernel kommt nicht mit Deinem Motherboard zurecht - habe auch schon von zu langen IDE-Kabeln gehört Also, falls Du wirklich nur mit Deinem DVD-LW DMA-Probleme hast, und Dir das nicht so wichtig ist, kannst Du es ja so lassen. Andernfalls lohnt es sich zu experimentieren! Ich würde als so vorgehen: - Im BIOS nach "verdächtigen" Einstellungen suchen, um Dein Motherboard probehalber weniger agressiv zu betreiben: z.B. RAM-Timing hoch, FSB runter. (Die aktuellen Einstellungen notieren, damit Du später alles wieder zurücksetzen kannst. Höhere RAM-Timings haben übrigens bei heutiger Hardware kaum noch messbare Geschwindigkeitseinbussen) - Die IDE-Geräte auch mal einzeln testen: Nur ein oder zwei gleichzeitig (an verschiedenen Controllern als Master) anschliessen, dann von CD das Suse-Rescue oder auch ein Knoppix starten und mit hdparm herumspielen. - vielleicht auch mal mit acpi=off und apm=off booten - memtest würde ich auch mal ein paar Stunden laufen lassen Grüsse, Rüdiger
participants (2)
-
Karl-Heinz Gremm
-
Rüdiger Meier