Folgendes Problem: Eine Maxtor 160 GB Platte muss wegen des Gehäuses mit einem überlangen (90cm) Kabel angeschlossen werden. Für den schnellen Austausch ist sie zudem noch in einem Wechselrahmen eingebaut. Diese Kombination führt leider dazu, dass es "DriveReady SeekComplete Error" und "DriveStatusError BadCRC" Meldungen im syslog gibt. Nun habe ich testweise mit hdparm mal den Transfermodi auf UDMA66 heruntergesetzt und mit bonnie ein wenig Last erzeugt und dabei sind keine Fehler mehr aufgetreten. Ich möchte nun, dass ab dem Booten nur noch UDMA66 benutzt wird. Dies ist leider nicht so einfach: - es gibt für diese Platte kein tool, um die Platte auf UDMA66 zu locken - es gibt anscheinend keinen Kernelparameter, um UDMA66 zu erzwingen - durch hdparm getroffene Einstellungen (hdparm -k1 -K1 -X68 /dev/hdx) sind nach einem Reboot wieder hinfällig, obwohl der Parameter "-K" vonhdparm laut manpage eigentlich genau diese Einstellungen speichern sollte. Das Setzen von UDMA66 in einem bootskript mittels hdparm hilft auch nicht weiter, da ich Softwareraid benutze, welches evtl. nach einem Reboot einen Resync durchführt BEVOR hdparm ausgeführt wird. Ich kann die Autodection des Raids auch nicht auschalten, da sich die rootpartition auf einem anderem Raid befindet. Any Hints? Karsten
* On Tue, 10 Dec 2002 at 17:39 +0100, Karsten Fischer wrote:
Folgendes Problem: Eine Maxtor 160 GB Platte muss wegen des Gehäuses mit einem überlangen (90cm) Kabel angeschlossen werden. Für den schnellen Austausch ist sie zudem noch in einem Wechselrahmen eingebaut. Diese Kombination führt leider dazu, dass es "DriveReady SeekComplete Error" und "DriveStatusError BadCRC" Meldungen im syslog gibt. Nun habe ich testweise mit hdparm mal den Transfermodi auf UDMA66 heruntergesetzt und mit bonnie ein wenig Last erzeugt und dabei sind keine Fehler mehr aufgetreten. Ich möchte nun, dass ab dem Booten nur noch UDMA66 benutzt wird.
Dies ist leider nicht so einfach: - es gibt für diese Platte kein tool, um die Platte auf UDMA66 zu locken - es gibt anscheinend keinen Kernelparameter, um UDMA66 zu erzwingen - durch hdparm getroffene Einstellungen (hdparm -k1 -K1 -X68 /dev/hdx) sind nach einem Reboot wieder hinfällig, obwohl der Parameter "-K" vonhdparm laut manpage eigentlich genau diese Einstellungen speichern sollte.
hdparm -kK speichert die Einstellungen über einen Reset IDE-Busses hinweg, nicht über einen Reset des Rechners.
Das Setzen von UDMA66 in einem bootskript mittels hdparm hilft auch nicht weiter, da ich Softwareraid benutze, welches evtl. nach einem Reboot einen Resync durchführt BEVOR hdparm ausgeführt wird. Ich kann die Autodection des Raids auch nicht auschalten, da sich die rootpartition auf einem anderem Raid befindet.
Hmm, wie siehts denn mit einem PIO-Mode aus? Schau mal ein wenig in die Kernelkonfiguration bzw. Kernelsource, irgendwo lässt sich das ausschalten, daß der DMA-Modus gleich beim Booten aktiviert wird. Ein eventuelles RAID-Sync wäre dann zwar etwas langsamer, aber würde laufen. Möglicherweise kannst Du Dir den Kernel auch gleich so patchen, daß bei der besagten Platte nix höheres als UDMA66 genommen wird; kann ich momentan leider in Ermangelung eines 2.4er Kernels nicht beurteilen. -- Adalbert GPG welcome, request public key: mailto:adalbert+key@lopez.at
Hallo, On Tue, 10 Dec 2002, Adalbert Michelic wrote:
* On Tue, 10 Dec 2002 at 17:39 +0100, Karsten Fischer wrote:
Das Setzen von UDMA66 in einem bootskript mittels hdparm hilft auch nicht weiter, da ich Softwareraid benutze, welches evtl. nach einem Reboot einen Resync durchführt BEVOR hdparm ausgeführt wird. Ich kann die Autodection des Raids auch nicht auschalten, da sich die rootpartition auf einem anderem Raid befindet.
Hmm, wie siehts denn mit einem PIO-Mode aus? Schau mal ein wenig in die Kernelkonfiguration bzw. Kernelsource, irgendwo lässt sich das ausschalten, daß der DMA-Modus gleich beim Booten aktiviert wird. Ein eventuelles RAID-Sync wäre dann zwar etwas langsamer, aber würde laufen.
Oehm, ich wuerde auch mal im BIOS kruschteln -- ich kenn zwar keine aktuellen BIOSe, wuerde mich aber wundern, wenn man da nicht wo drehen koennte ;)
Möglicherweise kannst Du Dir den Kernel auch gleich so patchen, daß bei der besagten Platte nix höheres als UDMA66 genommen wird; kann ich momentan leider in Ermangelung eines 2.4er Kernels nicht beurteilen.
Zur Not kann man auf jeden Fall das "Use DMA by default if available" (oder so aehnlich) abschalten: CONFIG_IDEDMA_PCI_AUTO=n ein 'grep "DMA" /usr/src/linux/.config' liefern noch mehr, wo ich grad aber nicht mehr weiss, was die bewirken, ggfs. im make *config die Hilfe befragen... Anschalten kann man dann DMA mit hdparm. -dnh PS: Mich wundert's, dass bei der Config[1] UMDA66 noch moeglich ist ;) Die Specs reden IIRC von max. 45cm Kabellaenge... ;) [1] gesnippt: 90cm Kabel + Wechselrahmen -- Wenn man guter Dinge und harmlosen Gemüts sich hier subscribed und unvorbereitet auf die hiesige Population seltsamer Entitäten (multiple Bernds, der nicht- existente Listowner, Du ...) stößt, kann man schon mal kurz panisch werden ... hat ja nicht jeder den Anhalter gelesen. -- "Moss" in suse-talk
participants (3)
-
Adalbert Michelic
-
David Haller
-
Karsten Fischer