svn commit: r260516 - head/sys/dev/netmap
Luigi Rizzo
luigi at FreeBSD.org
Fri Jan 10 16:01:45 UTC 2014
Author: luigi
Date: Fri Jan 10 16:01:44 2014
New Revision: 260516
URL: http://svnweb.freebsd.org/changeset/base/260516
Log:
Fix netmap emulation when NICs attached to a VALE switch have a different
number of tx and rx rings
Submitted by: Vincenzo Maffione
Modified:
head/sys/dev/netmap/netmap_vale.c
Modified: head/sys/dev/netmap/netmap_vale.c
==============================================================================
--- head/sys/dev/netmap/netmap_vale.c Fri Jan 10 16:00:27 2014 (r260515)
+++ head/sys/dev/netmap/netmap_vale.c Fri Jan 10 16:01:44 2014 (r260516)
@@ -1835,12 +1835,15 @@ netmap_bwrap_register(struct netmap_adap
hostna->up.na_lut_objtotal = na->na_lut_objtotal;
}
- /* cross-link the netmap rings */
- for (i = 0; i <= na->num_tx_rings; i++) {
+ /* cross-link the netmap rings
+ * The original number of rings comes from hwna,
+ * rx rings on one side equals tx rings on the other.
+ */
+ for (i = 0; i <= na->num_rx_rings; i++) {
hwna->tx_rings[i].nkr_num_slots = na->rx_rings[i].nkr_num_slots;
hwna->tx_rings[i].ring = na->rx_rings[i].ring;
}
- for (i = 0; i <= na->num_rx_rings; i++) {
+ for (i = 0; i <= na->num_tx_rings; i++) {
hwna->rx_rings[i].nkr_num_slots = na->tx_rings[i].nkr_num_slots;
hwna->rx_rings[i].ring = na->tx_rings[i].ring;
}
More information about the svn-src-all
mailing list