aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/netmap/if_lem_netmap.h
diff options
context:
space:
mode:
authorLuigi Rizzo <luigi@FreeBSD.org>2013-01-17 22:14:58 +0000
committerLuigi Rizzo <luigi@FreeBSD.org>2013-01-17 22:14:58 +0000
commit1dce924d2528107dd2c49bf68434bca3135b2fbf (patch)
treee7c9983311fd80a432d1eb47b75fb539c22fbc9c /sys/dev/netmap/if_lem_netmap.h
parentf876ffeae3dfa42438cd53f0abf84359c07bfd95 (diff)
Notes
Diffstat (limited to 'sys/dev/netmap/if_lem_netmap.h')
-rw-r--r--sys/dev/netmap/if_lem_netmap.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/dev/netmap/if_lem_netmap.h b/sys/dev/netmap/if_lem_netmap.h
index 9f24580a9e8d..d3be70017f8e 100644
--- a/sys/dev/netmap/if_lem_netmap.h
+++ b/sys/dev/netmap/if_lem_netmap.h
@@ -253,6 +253,8 @@ lem_netmap_rxsync(struct ifnet *ifp, u_int ring_nr, int do_lock)
l = adapter->next_rx_desc_to_check;
j = netmap_idx_n2k(kring, l);
if (netmap_no_pendintr || force_update) {
+ uint16_t slot_flags = kring->nkr_slot_flags;
+
for (n = 0; ; n++) {
struct e1000_rx_desc *curr = &adapter->rx_desc_base[l];
uint32_t staterr = le32toh(curr->status);
@@ -266,6 +268,7 @@ lem_netmap_rxsync(struct ifnet *ifp, u_int ring_nr, int do_lock)
len = 0;
}
ring->slot[j].len = len;
+ ring->slot[j].flags = slot_flags;
bus_dmamap_sync(adapter->rxtag,
adapter->rx_buffer_area[l].map,
BUS_DMASYNC_POSTREAD);