svn commit: r297883 - head/sys/dev/cxgbe
Navdeep Parhar
np at FreeBSD.org
Tue Apr 12 22:11:31 UTC 2016
Author: np
Date: Tue Apr 12 22:11:29 2016
New Revision: 297883
URL: https://svnweb.freebsd.org/changeset/base/297883
Log:
cxgbe(4): Always dispatch all work requests that have been written to the
descriptor ring before leaving drain_wrq_wr_list.
Modified:
head/sys/dev/cxgbe/t4_sge.c
Modified: head/sys/dev/cxgbe/t4_sge.c
==============================================================================
--- head/sys/dev/cxgbe/t4_sge.c Tue Apr 12 22:07:33 2016 (r297882)
+++ head/sys/dev/cxgbe/t4_sge.c Tue Apr 12 22:11:29 2016 (r297883)
@@ -1726,7 +1726,8 @@ drain_wrq_wr_list(struct adapter *sc, st
MPASS(TAILQ_EMPTY(&wrq->incomplete_wrs));
wr = STAILQ_FIRST(&wrq->wr_list);
MPASS(wr != NULL); /* Must be called with something useful to do */
- dbdiff = IDXDIFF(eq->pidx, eq->dbidx, eq->sidx);
+ MPASS(eq->pidx == eq->dbidx);
+ dbdiff = 0;
do {
eq->cidx = read_hw_cidx(eq);
@@ -1738,7 +1739,7 @@ drain_wrq_wr_list(struct adapter *sc, st
MPASS(wr->wrq == wrq);
n = howmany(wr->wr_len, EQ_ESIZE);
if (available < n)
- return;
+ break;
dst = (void *)&eq->desc[eq->pidx];
if (__predict_true(eq->sidx - eq->pidx > n)) {
More information about the svn-src-head
mailing list