svn commit: r191075 - stable/7/sys/dev/amr

Scott Long scottl at FreeBSD.org
Tue Apr 14 13:10:56 PDT 2009


Author: scottl
Date: Tue Apr 14 20:10:53 2009
New Revision: 191075
URL: http://svn.freebsd.org/changeset/base/191075

Log:
  Don't register the CAM passthrough interface until interrupts are running.
  This fixes some problems at boot for some that are happening in fairly
  rare cases.  It's just a hack, though, which is why it's only going into
  stable/7 for now.  Note that this hack has a side effect of possibly not
  scanning the AMR buses for /dev/passN devices at boot.  These devices are
  not required for access to the RAID arrays, and only a few tools use them.
  If this affects you, let me know.
  
  Approved by:	re

Modified:
  stable/7/sys/dev/amr/amr.c

Modified: stable/7/sys/dev/amr/amr.c
==============================================================================
--- stable/7/sys/dev/amr/amr.c	Tue Apr 14 19:51:14 2009	(r191074)
+++ stable/7/sys/dev/amr/amr.c	Tue Apr 14 20:10:53 2009	(r191075)
@@ -259,15 +259,6 @@ amr_attach(struct amr_softc *sc)
      */
     amr_init_sysctl(sc);
 
-#if AMR_ENABLE_CAM != 0
-    /*
-     * Attach our 'real' SCSI channels to CAM.
-     */
-    if (amr_cam_attach(sc))
-	return(ENXIO);
-    debug(2, "CAM attach done");
-#endif
-
     /*
      * Create the control device.
      */
@@ -357,6 +348,15 @@ amr_startup(void *arg)
      */
 /*    sc->amr_timeout = timeout(amr_periodic, sc, hz);*/
 
+#if AMR_ENABLE_CAM != 0
+    /*
+     * Attach our 'real' SCSI channels to CAM.
+     */
+    if (amr_cam_attach(sc))
+	device_printf(sc->amr_dev, "CAM passthrough attachment failed\n");
+    debug(2, "CAM attach done");
+#endif
+
     return;
 }
 


More information about the svn-src-stable-7 mailing list