| /trueos/sys/dev/netmap/ |
| HD | netmap.c | 693 netmap_txsync_to_host_compat(struct netmap_kring *kring, int flags) in netmap_txsync_to_host_compat() argument 696 netmap_txsync_to_host(kring->na); in netmap_txsync_to_host_compat() 702 netmap_rxsync_from_host_compat(struct netmap_kring *kring, int flags) in netmap_rxsync_from_host_compat() argument 705 netmap_rxsync_from_host(kring->na, NULL, NULL); in netmap_rxsync_from_host_compat() 740 struct netmap_kring *kring; in netmap_krings_create() local 762 kring = &na->tx_rings[i]; in netmap_krings_create() 763 bzero(kring, sizeof(*kring)); in netmap_krings_create() 764 kring->na = na; in netmap_krings_create() 765 kring->ring_id = i; in netmap_krings_create() 766 kring->nkr_num_slots = ndesc; in netmap_krings_create() [all …]
|
| HD | netmap_monitor.c | 113 netmap_monitor_parent_sync(struct netmap_kring *kring, int flags, u_int* ringptr) in netmap_monitor_parent_sync() argument 115 struct netmap_monitor_adapter *mna = kring->monitor; in netmap_monitor_parent_sync() 116 struct netmap_kring *mkring = &mna->up.rx_rings[kring->ring_id]; in netmap_monitor_parent_sync() 117 struct netmap_ring *ring = kring->ring, *mring = mkring->ring; in netmap_monitor_parent_sync() 121 u_int lim = kring->nkr_num_slots - 1, in netmap_monitor_parent_sync() 126 error = kring->save_sync(kring, flags); in netmap_monitor_parent_sync() 132 rel_slots += kring->nkr_num_slots; in netmap_monitor_parent_sync() 193 netmap_monitor_parent_txsync(struct netmap_kring *kring, int flags) in netmap_monitor_parent_txsync() argument 195 ND("%s %x", kring->name, flags); in netmap_monitor_parent_txsync() 196 return netmap_monitor_parent_sync(kring, flags, &kring->nr_hwtail); in netmap_monitor_parent_txsync() [all …]
|
| HD | if_vtnet_netmap.h | 109 vtnet_netmap_txsync(struct netmap_kring *kring, int flags) in vtnet_netmap_txsync() argument 111 struct netmap_adapter *na = kring->na; in vtnet_netmap_txsync() 113 struct netmap_ring *ring = kring->ring; in vtnet_netmap_txsync() 114 u_int ring_nr = kring->ring_id; in vtnet_netmap_txsync() 118 u_int const lim = kring->nkr_num_slots - 1; in vtnet_netmap_txsync() 119 u_int const head = kring->rhead; in vtnet_netmap_txsync() 131 nm_i = kring->nr_hwcur; in vtnet_netmap_txsync() 135 nic_i = netmap_idx_k2n(kring, nm_i); in vtnet_netmap_txsync() 167 kring->nr_hwcur = nm_i; /* note we migth break early */ in vtnet_netmap_txsync() 205 kring->nr_hwtail += n; in vtnet_netmap_txsync() [all …]
|
| HD | if_igb_netmap.h | 84 igb_netmap_txsync(struct netmap_kring *kring, int flags) in igb_netmap_txsync() argument 86 struct netmap_adapter *na = kring->na; in igb_netmap_txsync() 88 struct netmap_ring *ring = kring->ring; in igb_netmap_txsync() 92 u_int const lim = kring->nkr_num_slots - 1; in igb_netmap_txsync() 93 u_int const head = kring->rhead; in igb_netmap_txsync() 95 u_int report_frequency = kring->nkr_num_slots >> 1; in igb_netmap_txsync() 99 struct tx_ring *txr = &adapter->tx_rings[kring->ring_id]; in igb_netmap_txsync() 111 nm_i = kring->nr_hwcur; in igb_netmap_txsync() 113 nic_i = netmap_idx_k2n(kring, nm_i); in igb_netmap_txsync() 155 kring->nr_hwcur = head; in igb_netmap_txsync() [all …]
|
| HD | if_em_netmap.h | 116 em_netmap_txsync(struct netmap_kring *kring, int flags) in em_netmap_txsync() argument 118 struct netmap_adapter *na = kring->na; in em_netmap_txsync() 120 struct netmap_ring *ring = kring->ring; in em_netmap_txsync() 124 u_int const lim = kring->nkr_num_slots - 1; in em_netmap_txsync() 125 u_int const head = kring->rhead; in em_netmap_txsync() 127 u_int report_frequency = kring->nkr_num_slots >> 1; in em_netmap_txsync() 131 struct tx_ring *txr = &adapter->tx_rings[kring->ring_id]; in em_netmap_txsync() 140 nm_i = kring->nr_hwcur; in em_netmap_txsync() 142 nic_i = netmap_idx_k2n(kring, nm_i); in em_netmap_txsync() 175 kring->nr_hwcur = head; in em_netmap_txsync() [all …]
|
| HD | ixgbe_netmap.h | 156 ixgbe_netmap_txsync(struct netmap_kring *kring, int flags) in ixgbe_netmap_txsync() argument 158 struct netmap_adapter *na = kring->na; in ixgbe_netmap_txsync() 160 struct netmap_ring *ring = kring->ring; in ixgbe_netmap_txsync() 164 u_int const lim = kring->nkr_num_slots - 1; in ixgbe_netmap_txsync() 165 u_int const head = kring->rhead; in ixgbe_netmap_txsync() 170 u_int report_frequency = kring->nkr_num_slots >> 1; in ixgbe_netmap_txsync() 174 struct tx_ring *txr = &adapter->tx_rings[kring->ring_id]; in ixgbe_netmap_txsync() 215 nm_i = kring->nr_hwcur; in ixgbe_netmap_txsync() 217 nic_i = netmap_idx_k2n(kring, nm_i); in ixgbe_netmap_txsync() 261 kring->nr_hwcur = head; in ixgbe_netmap_txsync() [all …]
|
| HD | netmap_generic.c | 430 generic_netmap_tx_clean(struct netmap_kring *kring) in generic_netmap_tx_clean() argument 432 u_int const lim = kring->nkr_num_slots - 1; in generic_netmap_tx_clean() 433 u_int nm_i = nm_next(kring->nr_hwtail, lim); in generic_netmap_tx_clean() 434 u_int hwcur = kring->nr_hwcur; in generic_netmap_tx_clean() 436 struct mbuf **tx_pool = kring->tx_pool; in generic_netmap_tx_clean() 443 tx_pool[nm_i] = m = netmap_get_mbuf(NETMAP_BUF_SIZE(kring->na)); in generic_netmap_tx_clean() 472 kring->nr_hwtail = nm_prev(nm_i, lim); in generic_netmap_tx_clean() 473 ND("tx completed [%d] -> hwtail %d", n, kring->nr_hwtail); in generic_netmap_tx_clean() 485 generic_tx_event_middle(struct netmap_kring *kring, u_int hwcur) in generic_tx_event_middle() argument 487 u_int n = kring->nkr_num_slots; in generic_tx_event_middle() [all …]
|
| HD | if_lem_netmap.h | 88 lem_netmap_txsync(struct netmap_kring *kring, int flags) in lem_netmap_txsync() argument 90 struct netmap_adapter *na = kring->na; in lem_netmap_txsync() 92 struct netmap_ring *ring = kring->ring; in lem_netmap_txsync() 95 u_int const lim = kring->nkr_num_slots - 1; in lem_netmap_txsync() 96 u_int const head = kring->rhead; in lem_netmap_txsync() 98 u_int report_frequency = kring->nkr_num_slots >> 1; in lem_netmap_txsync() 114 nm_i = kring->nr_hwcur; in lem_netmap_txsync() 129 nic_i = netmap_idx_k2n(kring, nm_i); in lem_netmap_txsync() 163 kring->nr_hwcur = head; in lem_netmap_txsync() 206 if (ticks != kring->last_reclaim || flags & NAF_FORCE_RECLAIM || nm_kr_txempty(kring)) { in lem_netmap_txsync() [all …]
|
| HD | if_re_netmap.h | 68 re_netmap_txsync(struct netmap_kring *kring, int flags) in re_netmap_txsync() argument 70 struct netmap_adapter *na = kring->na; in re_netmap_txsync() 72 struct netmap_ring *ring = kring->ring; in re_netmap_txsync() 76 u_int const lim = kring->nkr_num_slots - 1; in re_netmap_txsync() 77 u_int const head = kring->rhead; in re_netmap_txsync() 90 nm_i = kring->nr_hwcur; in re_netmap_txsync() 132 kring->nr_hwcur = head; in re_netmap_txsync() 146 if (flags & NAF_FORCE_RECLAIM || nm_kr_txempty(kring)) { in re_netmap_txsync() 158 kring->nr_hwtail = nm_prev(netmap_idx_n2k(kring, nic_i), lim); in re_netmap_txsync() 162 nm_txsync_finalize(kring); in re_netmap_txsync() [all …]
|
| HD | netmap_vale.c | 346 struct netmap_kring *kring; in nm_free_bdgfwd() local 350 kring = na->tx_rings; in nm_free_bdgfwd() 352 if (kring[i].nkr_ft) { in nm_free_bdgfwd() 353 free(kring[i].nkr_ft, M_DEVBUF); in nm_free_bdgfwd() 354 kring[i].nkr_ft = NULL; /* protect from freeing twice */ in nm_free_bdgfwd() 367 struct netmap_kring *kring; in nm_alloc_bdgfwd() local 377 kring = na->tx_rings; in nm_alloc_bdgfwd() 393 kring[i].nkr_ft = ft; in nm_alloc_bdgfwd() 1037 nm_bdg_preflush(struct netmap_kring *kring, u_int end) in nm_bdg_preflush() argument 1040 (struct netmap_vp_adapter*)kring->na; in nm_bdg_preflush() [all …]
|
| HD | netmap_mem2.c | 1307 struct netmap_kring *kring; in netmap_free_rings() local 1311 for (kring = na->tx_rings; kring != na->rx_rings; kring++) { in netmap_free_rings() 1312 ring = kring->ring; in netmap_free_rings() 1315 netmap_free_bufs(na->nm_mem, ring->slot, kring->nkr_num_slots); in netmap_free_rings() 1317 kring->ring = NULL; in netmap_free_rings() 1319 for (/* cont'd from above */; kring != na->tailroom; kring++) { in netmap_free_rings() 1320 ring = kring->ring; in netmap_free_rings() 1323 netmap_free_bufs(na->nm_mem, ring->slot, kring->nkr_num_slots); in netmap_free_rings() 1325 kring->ring = NULL; in netmap_free_rings() 1341 struct netmap_kring *kring; in netmap_mem_rings_create() local [all …]
|
| HD | netmap_kern.h | 325 int (*nm_sync)(struct netmap_kring *kring, int flags); 346 int (*save_sync)(struct netmap_kring *kring, int flags); 545 int (*nm_txsync)(struct netmap_kring *kring, int flags); 546 int (*nm_rxsync)(struct netmap_kring *kring, int flags); 809 nm_kr_txempty(struct netmap_kring *kring) in nm_kr_txempty() argument 811 return kring->rcur == kring->nr_hwtail; in nm_kr_txempty() 969 nm_txsync_finalize(struct netmap_kring *kring) in nm_txsync_finalize() argument 972 kring->ring->tail = kring->rtail = kring->nr_hwtail; in nm_txsync_finalize() 978 kring->name, kring->nr_hwcur, kring->nr_hwtail, in nm_txsync_finalize() 979 kring->rhead, kring->rcur, kring->rtail); in nm_txsync_finalize() [all …]
|
| /trueos/sys/dev/cxgbe/ |
| HD | t4_netmap.c | 705 struct netmap_kring *kring, int npkt, int npkt_remaining, int txcsum) in cxgbe_nm_tx() argument 707 struct netmap_ring *ring = kring->ring; in cxgbe_nm_tx() 709 const u_int lim = kring->nkr_num_slots - 1; in cxgbe_nm_tx() 730 slot = &ring->slot[kring->nr_hwcur]; in cxgbe_nm_tx() 731 PNMB(kring->na, slot, &ba); in cxgbe_nm_tx() 759 kring->nr_hwcur = nm_next(kring->nr_hwcur, lim); in cxgbe_nm_tx() 851 cxgbe_netmap_txsync(struct netmap_kring *kring, int flags) in cxgbe_netmap_txsync() argument 853 struct netmap_adapter *na = kring->na; in cxgbe_netmap_txsync() 857 struct sge_nm_txq *nm_txq = &sc->sge.nm_txq[pi->first_nm_txq + kring->ring_id]; in cxgbe_netmap_txsync() 858 const u_int head = kring->rhead; in cxgbe_netmap_txsync() [all …]
|
| /trueos/sys/dev/ixgbe/ |
| HD | ix_txrx.c | 988 struct netmap_kring *kring = &na->tx_rings[txr->me]; local 1007 (kring->nr_kflags < kring->nkr_num_slots && 1008 txd[kring->nr_kflags].wb.status & IXGBE_TXD_STAT_DD)) {
|
| HD | if_ix.c | 1080 struct netmap_kring *kring = &na->rx_rings[i]; in ixgbe_init_locked() local 1081 int t = na->num_rx_desc - 1 - nm_kr_rxspace(kring); in ixgbe_init_locked()
|
| /trueos/sys/dev/re/ |
| HD | if_re.c | 2926 struct netmap_kring *kring = &NA(ifp)->tx_rings[0]; in re_start_locked() local 2927 if (sc->rl_ldata.rl_tx_prodidx != kring->nr_hwcur) { in re_start_locked()
|
| /trueos/sys/dev/e1000/ |
| HD | if_igb.c | 4653 struct netmap_kring *kring = &na->rx_rings[i]; in igb_initialize_receive_units() local 4654 int t = rxr->next_to_refresh - nm_kr_rxspace(kring); in igb_initialize_receive_units()
|