summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorAdrian Chadd <adrian@FreeBSD.org>2009-05-27 13:59:17 +0000
committerAdrian Chadd <adrian@FreeBSD.org>2009-05-27 13:59:17 +0000
commitd76e4550e9fb13853fb9f80dc93e423949983d2c (patch)
treef63b8fce438e28f4c74f2ba9ade8a25eeb1650ce /sys
parentefbad25934c1556230b5b2d2076a9c2a30890922 (diff)
Notes
Diffstat (limited to 'sys')
-rw-r--r--sys/dev/xen/netfront/netfront.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/dev/xen/netfront/netfront.c b/sys/dev/xen/netfront/netfront.c
index 3498e5d04808..046cd65af399 100644
--- a/sys/dev/xen/netfront/netfront.c
+++ b/sys/dev/xen/netfront/netfront.c
@@ -1099,6 +1099,8 @@ xn_txeof(struct netfront_info *np)
panic("netif_release_tx_bufs: tx_chain_cnt must be >= 0");
}
m_free(m);
+ /* Only mark the queue active if we've freed up at least one slot to try */
+ ifp->if_drv_flags &= ~IFF_DRV_OACTIVE;
}
np->tx.rsp_cons = prod;
@@ -1115,7 +1117,6 @@ xn_txeof(struct netfront_info *np)
prod + ((np->tx.sring->req_prod - prod) >> 1) + 1;
mb();
-
} while (prod != np->tx.sring->rsp_prod);
out: