Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 1 Aug 1997 04:06:17 -0700 (PDT)
From:      asami@cs.berkeley.edu (Satoshi Asami)
To:        gibbs@plutotech.com
Cc:        gibbs@freebsd.org, scsi@freebsd.org
Subject:   Re: NOT READY
Message-ID:  <199708011106.EAA27735@silvia.HIP.Berkeley.EDU>
In-Reply-To: <199707301827.MAA17071@pluto.plutotech.com> (gibbs@plutotech.com)

next in thread | previous in thread | raw e-mail | index | archive | help
Thanks for your reply, Justin.

 * be doing to cause the drive to spin down.  You could try adding in a start
 * unit in the sense handler for the sd driver and see if it clears up your
 * problem.

Something like this?

===
Index: sd.c
===================================================================
RCS file: /usr/cvs/src/sys/scsi/sd.c,v
retrieving revision 1.95.2.2
diff -u -r1.95.2.2 sd.c
--- sd.c	1997/02/05 19:02:22	1.95.2.2
+++ sd.c	1997/08/01 08:54:18
@@ -853,6 +853,13 @@
 	if (inqbuf->dev_qual2 & SID_REMOVABLE)
 		return SCSIRET_CONTINUE;
 
+	/* Restart if drive says not ready.
+	 */
+	if ((sense->error_code & SSD_ERRCODE_VALID) == 0x2) {
+		scsi_start_unit(sc_link, SCSI_ERR_OK | SCSI_SILENT);
+		return SCSIRET_CONTINUE;
+	}
+
 	/* Retry all disk errors.
 	 */
 	scsi_sense_print(xs);
===

(I haven't tried it yet...it's kinda scary. ;)

 * The sd driver will perform a start unit (unconditionally) when the
 * device is opened.  This will cause the drive to spin up and everything
 * will go back to normal.

I see.

 * It wouldn't surprise me at all if this were a thermal problem.
 * Stick a temperature sensor in the enclosure (on the drive itself)
 * and rule this out.

I'll see how I can do that.

Satoshi



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199708011106.EAA27735>