Re: set_multmode: status=0x51 { DriveReady SeekComplete Error }

T Taneli Vahakangas (vahakang@cs.Helsinki.FI)
Mon, 7 Sep 1998 23:39:18 +0300 (EEST)


Hello!

On Mon, 7 Sep 1998, Adam Sulmicki wrote:

>
> Hello
>
> Could someone explain me what the following error means and wheter
> I should worry about it?
>
> Those messages show at bootup. The machine seems to work fine
> otherwise. The error shows both for 2.0.34 and 2.0.120 (as shown
> below)
>
> Does it mean it does not support MultiMode? -- I think it should as
> it is pretty new hardware.
>
> [root@cyrix log]# egrep "hda|Linux version" /var/log/messages
>
>
> Sep 7 00:39:55 cyrix kernel: Linux version 2.0.34 (root@porky.redhat.com) (gcc
> version 2.7.2.3) #1 Fri May 8 16:05:57 EDT 1998
> Sep 7 00:39:55 cyrix kernel: hda: ST38641A, 8207MB w/128kB Cache, CHS=512/32/63
> Sep 7 00:39:55 cyrix kernel: hda:hda: set_multmode: status=0x51 { DriveReady S
> eekComplete Error }
> Sep 7 00:39:55 cyrix kernel: hda: set_multmode: error=0x04 { DriveStatusError }
> Sep 7 00:39:55 cyrix kernel: hda1 hda2 hda3
>
[rest snipped]

If you feel brave, try this (against 2.1.120):
--- drivers/block/ide-disk.c.orig Mon Sep 7 23:10:58 1998
+++ drivers/block/ide-disk.c Sun Sep 6 23:16:04 1998
@@ -735,7 +735,7 @@
drive->mult_req = INITIAL_MULT_COUNT;
if (drive->mult_req > id->max_multsect)
drive->mult_req = id->max_multsect;
- if (drive->mult_req || ((id->multsect_valid & 1) &&
id->multsect))
+ if (drive->mult_req && ((id->multsect_valid & 1) &&
id->multsect))
drive->special.b.set_multmode = 1;
}
}

I have been using it for 3 months now. It apparently removes the annoying
message during bootup. Yes, it probably is dead wrong, but I don't care.
drive->mult_req=0, drive->multsect_valid=yes, drive->multsect=16, but the
drive doesn't support multsect=0, which the code is trying to set.

I think your drive is okay. It's just so shining and stunning new that it
promptly refuses to work in non-multsect mode. After all the engineers and
other people at Seagate worked hard to make it work in
multsect={16,32,whatever} mode, why should anybody set it off?

This is not very serious, but the error message is annoying. Anybody want
to fix this before 2.2?

> Thanks,
> -Adam

Taneli <vahakang@cs.helsinki.fi>

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/faq.html