Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 28 Aug 2017 03:25:42 +0000 (UTC)
From:      Navdeep Parhar <np@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r322961 - head/sys/dev/cxgbe
Message-ID:  <201708280325.v7S3PgqQ009209@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: np
Date: Mon Aug 28 03:25:41 2017
New Revision: 322961
URL: https://svnweb.freebsd.org/changeset/base/322961

Log:
  cxgbe(4): Fix some assertions during driver detach.  The netmap queues
  can't be initialized if the VI isn't.
  
  MFC after:	3 days

Modified:
  head/sys/dev/cxgbe/t4_sge.c

Modified: head/sys/dev/cxgbe/t4_sge.c
==============================================================================
--- head/sys/dev/cxgbe/t4_sge.c	Mon Aug 28 03:13:16 2017	(r322960)
+++ head/sys/dev/cxgbe/t4_sge.c	Mon Aug 28 03:25:41 2017	(r322961)
@@ -3306,7 +3306,10 @@ free_nm_rxq(struct vi_info *vi, struct sge_nm_rxq *nm_
 {
 	struct adapter *sc = vi->pi->adapter;
 
-	MPASS(nm_rxq->iq_cntxt_id == INVALID_NM_RXQ_CNTXT_ID);
+	if (vi->flags & VI_INIT_DONE)
+		MPASS(nm_rxq->iq_cntxt_id == INVALID_NM_RXQ_CNTXT_ID);
+	else
+		MPASS(nm_rxq->iq_cntxt_id == 0);
 
 	free_ring(sc, nm_rxq->iq_desc_tag, nm_rxq->iq_desc_map, nm_rxq->iq_ba,
 	    nm_rxq->iq_desc);
@@ -3366,7 +3369,10 @@ free_nm_txq(struct vi_info *vi, struct sge_nm_txq *nm_
 {
 	struct adapter *sc = vi->pi->adapter;
 
-	MPASS(nm_txq->cntxt_id == INVALID_NM_TXQ_CNTXT_ID);
+	if (vi->flags & VI_INIT_DONE)
+		MPASS(nm_txq->cntxt_id == INVALID_NM_TXQ_CNTXT_ID);
+	else
+		MPASS(nm_txq->cntxt_id == 0);
 
 	free_ring(sc, nm_txq->desc_tag, nm_txq->desc_map, nm_txq->ba,
 	    nm_txq->desc);



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