svn commit: r192894 - head/sys/dev/xen/netfront
Adrian Chadd
adrian at FreeBSD.org
Wed May 27 13:59:18 UTC 2009
Author: adrian
Date: Wed May 27 13:59:17 2009
New Revision: 192894
URL: http://svn.freebsd.org/changeset/base/192894
Log:
Clear IFF_DRV_OACTIVE if at least one TX xen/mbuf ring slot has been freed.
Modified:
head/sys/dev/xen/netfront/netfront.c
Modified: head/sys/dev/xen/netfront/netfront.c
==============================================================================
--- head/sys/dev/xen/netfront/netfront.c Wed May 27 12:44:36 2009 (r192893)
+++ head/sys/dev/xen/netfront/netfront.c Wed May 27 13:59:17 2009 (r192894)
@@ -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:
More information about the svn-src-head
mailing list