Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 27 Aug 2013 19:47:03 +0000 (UTC)
From:      "Kenneth D. Merry" <ken@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r254970 - head/sys/cam/scsi
Message-ID:  <201308271947.r7RJl3CW013414@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
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 */



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