svn commit: r254970 - head/sys/cam/scsi

Kenneth D. Merry ken at FreeBSD.org
Tue Aug 27 19:47:03 UTC 2013


Author: ken
Date: Tue Aug 27 19:47:03 2013
New Revision: 254970
URL: http://svnweb.freebsd.org/changeset/base/254970

Log:
  If a drive returns ASC/ASCQ 0x04,0x11 "Logical unit not ready,
  notify (enable spinup) required", instead of doing the normal
  retries, poll for a change in status.
  
  We will poll every half second for a minute for the status to
  change.
  
  Hitachi drives (and likely other SAS drives) return that ASC/ASCQ
  when they are waiting to spin up.  What it means is that they are
  waiting for the SAS expander to send them the SAS
  NOTIFY (ENABLE SPINUP) primitive.
  
  That primitive is the mechanism expanders/enclosures use to
  sequence drive spinup to avoid overloading power supplies.
  
  Sponsored by:	Spectra Logic
  MFC after:	3 days

Modified:
  head/sys/cam/scsi/scsi_all.c

Modified: head/sys/cam/scsi/scsi_all.c
==============================================================================
--- head/sys/cam/scsi/scsi_all.c	Tue Aug 27 19:46:56 2013	(r254969)
+++ head/sys/cam/scsi/scsi_all.c	Tue Aug 27 19:47:03 2013	(r254970)
@@ -1118,7 +1118,7 @@ static struct asc_table_entry asc_table[
 	{ SST(0x04, 0x10, SS_RDEF,	/* XXX TBD */
 	    "Logical unit not ready, auxiliary memory not accessible") },
 	/* DT  WRO AEB VF */
-	{ SST(0x04, 0x11, SS_RDEF,	/* XXX TBD */
+	{ SST(0x04, 0x11, SS_TUR | SSQ_MANY | SSQ_DECREMENT_COUNT | EBUSY,
 	    "Logical unit not ready, notify (enable spinup) required") },
 	/*        M    V  */
 	{ SST(0x04, 0x12, SS_RDEF,	/* XXX TBD */


More information about the svn-src-head mailing list