Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 8 May 2014 14:28:52 +0000 (UTC)
From:      Marius Strobl <marius@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org
Subject:   svn commit: r265683 - stable/8/sys/dev/sym
Message-ID:  <201405081428.s48ESqFD043754@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: marius
Date: Thu May  8 14:28:51 2014
New Revision: 265683
URL: http://svnweb.freebsd.org/changeset/base/265683

Log:
  MFC: r251394
  
  CAM_DEV_QFREEZE handling should only be done on request submission but
  neither on completion nor by SIM drivers in the first place. This issue
  has been revealed by r249466 (MFC'ed to stable/8 in r265147).

Modified:
  stable/8/sys/dev/sym/sym_hipd.c
Directory Properties:
  stable/8/sys/   (props changed)
  stable/8/sys/dev/   (props changed)
  stable/8/sys/dev/sym/   (props changed)

Modified: stable/8/sys/dev/sym/sym_hipd.c
==============================================================================
--- stable/8/sys/dev/sym/sym_hipd.c	Thu May  8 13:54:57 2014	(r265682)
+++ stable/8/sys/dev/sym/sym_hipd.c	Thu May  8 14:28:51 2014	(r265683)
@@ -2349,17 +2349,6 @@ static void sym_enqueue_cam_ccb(ccb_p cp
 /*
  *  Complete a pending CAM CCB.
  */
-static void _sym_xpt_done(hcb_p np, union ccb *ccb)
-{
-	SYM_LOCK_ASSERT(MA_OWNED);
-
-	KASSERT((ccb->ccb_h.status & CAM_SIM_QUEUED) == 0,
-			("%s: status=CAM_SIM_QUEUED", __func__));
-
-	if (ccb->ccb_h.flags & CAM_DEV_QFREEZE)
-		sym_freeze_cam_ccb(ccb);
-	xpt_done(ccb);
-}
 
 static void sym_xpt_done(hcb_p np, union ccb *ccb, ccb_p cp)
 {
@@ -2371,7 +2360,7 @@ static void sym_xpt_done(hcb_p np, union
 		ccb->ccb_h.status &= ~CAM_SIM_QUEUED;
 		ccb->ccb_h.sym_hcb_ptr = NULL;
 	}
-	_sym_xpt_done(np, ccb);
+	xpt_done(ccb);
 }
 
 static void sym_xpt_done2(hcb_p np, union ccb *ccb, int cam_status)
@@ -2379,7 +2368,7 @@ static void sym_xpt_done2(hcb_p np, unio
 	SYM_LOCK_ASSERT(MA_OWNED);
 
 	sym_set_cam_status(ccb, cam_status);
-	_sym_xpt_done(np, ccb);
+	xpt_done(ccb);
 }
 
 /*
@@ -8962,7 +8951,7 @@ static int sym_cam_attach(hcb_p np)
 		goto fail;
 	np->sim = sim;
 
-	if (xpt_create_path(&path, 0,
+	if (xpt_create_path(&path, NULL,
 			    cam_sim_path(np->sim), CAM_TARGET_WILDCARD,
 			    CAM_LUN_WILDCARD) != CAM_REQ_CMP) {
 		goto fail;



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