Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 14 May 2017 09:07:13 +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: r318263 - head/sys/dev/cxgbe
Message-ID:  <201705140907.v4E97DdX036987@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: np
Date: Sun May 14 09:07:13 2017
New Revision: 318263
URL: https://svnweb.freebsd.org/changeset/base/318263

Log:
  cxgbe(4): netmap-only interrupts for a VI do not have an associated rxq
  or ofld_rxq and should be ignored by vi_intr_iq.
  
  MFC after:	3 days.
  Sponsored by:	Chelsio Communications

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

Modified: head/sys/dev/cxgbe/t4_sge.c
==============================================================================
--- head/sys/dev/cxgbe/t4_sge.c	Sun May 14 00:38:41 2017	(r318262)
+++ head/sys/dev/cxgbe/t4_sge.c	Sun May 14 09:07:13 2017	(r318263)
@@ -969,6 +969,11 @@ vi_intr_iq(struct vi_info *vi, int idx)
 		return (&sc->sge.fwq);
 
 	nintr = vi->nintr;
+#ifdef DEV_NETMAP
+	/* Do not consider any netmap-only interrupts */
+	if (vi->flags & INTR_RXQ && vi->nnmrxq > vi->nrxq)
+		nintr -= vi->nnmrxq - vi->nrxq;
+#endif
 	KASSERT(nintr != 0,
 	    ("%s: vi %p has no exclusive interrupts, total interrupts = %d",
 	    __func__, vi, sc->intr_count));



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