NR_RX
slot = netmap_reset(na, NR_RX, i, 0);
kring = (x == NR_RX) ? na->rx_rings[qid] : na->tx_rings[qid];
return ena_ring_in_netmap(adapter, qid, NR_RX);
ena_netmap_reset_ring(adapter, qid, NR_RX);
struct netmap_slot *slot = netmap_reset(na, NR_RX, 0, 0);
slot = netmap_reset(na, NR_RX, rxq->vtnrx_id, 0);
kring->tx == NR_RX);
priv->np_qfirst[NR_RX],
priv->np_qlast[NR_RX],
for ((t_) = nonempty_sel((p_), NR_RX) ? NR_RX : NR_TX, \
(t_ == NR_RX || \
priv->np_qfirst[NR_RX],
priv->np_qlast[NR_RX]);
priv->np_qfirst[NR_RX],
return (priv->np_qfirst[NR_RX] != priv->np_qlast[NR_RX]);
if (t == NR_RX) {
if (mtu && t == NR_RX && kring->hwbuf_len < mtu) {
t = (cmd == NIOCTXSYNC ? NR_TX : NR_RX);
#define want_rx want[NR_RX]
si[NR_RX] = priv->np_si[NR_RX];
const enum txrx t = NR_RX;
nm_os_selrecord(sr, si[NR_RX]);
for (i = priv->np_qfirst[NR_RX]; i < priv->np_qlast[NR_RX]; i++) {
nm_os_selrecord(sr, si[NR_RX]);
u_int lim = netmap_real_rings(na, NR_RX), i;
mbq_safe_init(&NMR(na, NR_RX)[i]->rx_queue);
kring = NMR(na, NR_RX)[nma_get_nrings(na, NR_RX) + i];
enum txrx t = (work_done ? NR_RX : NR_TX);
if (t == NR_RX) {
n[NR_RX] = netmap_all_rings(na, NR_RX);
len = (n[NR_TX] + n[NR_RX]) *
na->tailroom = na->rx_rings + n[NR_RX];
for (i = 0; i < n[NR_TX] + n[NR_RX]; i++) {
u_int lim = netmap_real_rings(na, NR_RX), i;
for (i = nma_get_nrings(na, NR_RX); i < lim; i++) {
struct mbq *q = &NMR(na, NR_RX)[i]->rx_queue;
for (; i < netmap_real_rings(hwna, NR_RX); i++) {
for (i = 0; i < netmap_all_rings(hwna, NR_RX); i++) {
hostna->num_tx_rings = nma_get_nrings(hwna, NR_RX);
nma_get_nrings(hwna, NR_RX), NULL);
kring0 = NMR(bna->hwna, NR_RX);
if (i + req_cpus > nma_get_nrings(na, NR_RX)) {
i, i + req_cpus, nma_get_nrings(na, NR_RX));
qlast = nma_get_nrings(na, NR_RX);
struct nm_selinfo *si = priv->np_si[NR_RX];
si = priv->np_si[kn->kn_filter == EVFILT_WRITE ? NR_TX : NR_RX];
si = priv->np_si[(ev == EVFILT_WRITE) ? NR_TX : NR_RX];
if (t == NR_RX && q < na->num_rx_rings)
return (t== NR_RX ? "RX" : "TX");
return (t== NR_RX ? NR_TX : NR_RX);
num_rx_rings = priv->np_qlast[NR_RX] - priv->np_qfirst[NR_RX];
a->kring = NMR(na, NR_RX)[i + priv->np_qfirst[NR_RX]];
poll_wait(priv->np_filp, priv->np_si[NR_RX],
nm_os_selwakeup(priv->np_si[NR_RX]);
for (i = 0; i < n[NR_RX]; i++) {
if (na->rx_rings[i]->ring != NULL && i >= priv->np_qfirst[NR_RX]
&& i < priv->np_qlast[NR_RX]) {
for (i = 0; i < netmap_all_rings(na, NR_RX); i++) {
return (t == NR_RX ? NR_MONITOR_RX : NR_MONITOR_TX);
kring->zmon_list[NR_RX].next == NULL;
if (kring->tx == NR_RX) {
if (tx == NR_RX)
return netmap_zmon_parent_sync(kring, flags, NR_RX);
if (kring->zmon_list[NR_RX].next != NULL) {
if (kring->tx == NR_RX)
u_int nrx = netmap_real_rings(na, NR_RX);
rxq->vtnrx_id, NR_RX);
slot = netmap_reset(na, NR_RX, rxq->ifr_id, 0);