SUMMARY: Problem with Solaris 2.1 X86 and Seagate St-11200N disks

From: Tomas Olovsson (olovsson@ce.chalmers.se)
Date: Sun Dec 05 1993 - 09:30:40 CST


Thanks to all you people who have responded to my question! I have received
many suggestions and many requests for a summary to the net about this
problem. Both Seagate and Sun has been very helpful in their support!

In short, the problem was that Solaris X86 won't work together with our
Seagate ST-11200N disks (but with all other tested disks), at the
same time as these disks work fine with all other systems (NetBSD, DOS,
Windows NT). During installation and later on during boot, Solaris gives
the error message "PANIC: aha_docmd: adapter won't go idle". The problem
only occurs together with Adaptec 1542B/C controllers.

The problem seems to be that Solaris issues a "start unit" command
to the disk when it boots which causes the disk to hang the SCSI-bus.
I don't know whether it is Solaris or the disk that is the real problem.
However, Seagate has identified the problem and offered us to upgrade the
disk firmware to avoid the problem. Note that these disks have been
shipped with many Sun-stations in the past without any problems, and if
it is not absolutely necessary to use the disk together with Solaris and
and an Adaptec 1542 controller, there is no need to upgrade it. Obviously
it is something Sun's driver for the Adaptec controller does when it
initializes the SCSI-devices, that triggers the problem.

The firmware (i.e. software version in flash memory) can be identified
on a bar-coded label close to the power cable on the disk. We experienced
the problem with version 8378 and 9300. The new version we have upgraded
to is 9592.

There is (at least) one workaround for this problem if you have a 1542C
controller:

> On the disk, ENABLE "motor start" option

   Configure the controller for:
> ENABLE send start unit command
> DISABLE disconnection

Note that disabling disconnection is not necessarily an acceptable solution
in multiuser environments where many devices are present on the SCSI bus.
(The 1542B controller does not offer these options, thus this workaround
is not applicable.)

[ It seems that when the disk receives a "start unit" command when the
  motor is already running, it gets confused and Solaris times out. If
  the controller is forced to issue a start unit command to the disk when
  the motor is NOT running, it gets initialized in a proper way and
  everything works fine. // NOTE: This is my own interpretation of the
  problem and it could turn out to be wrong! //
]

Another reported workaround when there are more than one controller in
the system (and this disk is not a boot disk), is to disable BIOS support
for the controller. I have not tested this solution though.

    -- Tomas

_______________________________________________________________________________
___ _ Dept of Computer Engineering
 | _ ,___ _ _ | | | _ _ _ _ ,_ Chalmers Univ of Technology
 | |_| | | | |_\ _> |_| |_ |_| \/ _> _> |_| | | S-412 96 Gothenburg, SWEDEN
___________________________________________________olovsson@ce.chalmers.se_____



This archive was generated by hypermail 2.1.2 : Fri Sep 28 2001 - 23:08:31 CDT