Lines Matching full:na
132 nm_is_zmon(struct netmap_adapter *na) in nm_is_zmon() argument
134 return na->nm_register == netmap_zmon_reg; in nm_is_zmon()
157 (struct netmap_monitor_adapter *)kring->na; in netmap_monitor_rxsync()
171 netmap_monitor_krings_create(struct netmap_adapter *na) in netmap_monitor_krings_create() argument
173 int error = netmap_krings_create(na, 0); in netmap_monitor_krings_create()
181 u_int first = nma_get_nrings(na, t); in netmap_monitor_krings_create()
182 for (i = 0; i < nma_get_host_nrings(na, t); i++) { in netmap_monitor_krings_create()
183 struct netmap_kring *kring = NMR(na, t)[first + i]; in netmap_monitor_krings_create()
193 netmap_monitor_krings_delete(struct netmap_adapter *na) in netmap_monitor_krings_delete() argument
195 netmap_krings_delete(na); in netmap_monitor_krings_delete()
302 struct netmap_adapter *na = mkring->na; in nm_zmon_list_head() local
306 while (nm_is_zmon(na) && z->prev != NULL) { in nm_zmon_list_head()
308 na = kring->na; in nm_zmon_list_head()
311 return nm_is_zmon(na) ? NULL : kring; in nm_zmon_list_head()
351 netmap_adapter_get(ikring->na); in netmap_monitor_add()
373 int zmon = nm_is_zmon(mkring->na); in netmap_monitor_del()
400 netmap_adapter_get(mz->prev->na); in netmap_monitor_del()
401 netmap_adapter_put(mkring->na); in netmap_monitor_del()
410 netmap_adapter_put(mz->prev->na); in netmap_monitor_del()
448 netmap_monitor_stop(struct netmap_adapter *na) in netmap_monitor_stop() argument
455 for (i = 0; i < netmap_all_rings(na, t); i++) { in netmap_monitor_stop()
456 struct netmap_kring *kring = NMR(na, t)[i]; in netmap_monitor_stop()
467 (struct netmap_monitor_adapter *)mkring->na; in netmap_monitor_stop()
478 if (!nm_is_zmon(na)) { in netmap_monitor_stop()
485 (struct netmap_monitor_adapter *)zkring->na; in netmap_monitor_stop()
490 netmap_adapter_put(zkring->zmon_list[t].prev->na); in netmap_monitor_stop()
509 netmap_monitor_reg_common(struct netmap_adapter *na, int onoff, int zmon) in netmap_monitor_reg_common() argument
512 (struct netmap_monitor_adapter *)na; in netmap_monitor_reg_common()
519 nm_prdis("%p: onoff %d", na, onoff); in netmap_monitor_reg_common()
523 nm_prerr("%s: parent left netmap mode", na->name); in netmap_monitor_reg_common()
527 for (i = 0; i < netmap_all_rings(na, t); i++) { in netmap_monitor_reg_common()
528 mkring = NMR(na, t)[i]; in netmap_monitor_reg_common()
544 na->na_flags |= NAF_NETMAP_ON; in netmap_monitor_reg_common()
546 if (na->active_fds == 0) in netmap_monitor_reg_common()
547 na->na_flags &= ~NAF_NETMAP_ON; in netmap_monitor_reg_common()
549 for (i = 0; i < netmap_all_rings(na, t); i++) { in netmap_monitor_reg_common()
550 mkring = NMR(na, t)[i]; in netmap_monitor_reg_common()
706 netmap_zmon_reg(struct netmap_adapter *na, int onoff) in netmap_zmon_reg() argument
708 return netmap_monitor_reg_common(na, onoff, 1 /* zcopy */); in netmap_zmon_reg()
713 netmap_zmon_dtor(struct netmap_adapter *na) in netmap_zmon_dtor() argument
716 (struct netmap_monitor_adapter *)na; in netmap_zmon_dtor()
776 max_len = NETMAP_BUF_SIZE(mkring->na) - nm_get_offset(mkring, ms); in netmap_monitor_parent_sync()
883 netmap_monitor_reg(struct netmap_adapter *na, int onoff) in netmap_monitor_reg() argument
885 return netmap_monitor_reg_common(na, onoff, 0 /* no zcopy */); in netmap_monitor_reg()
889 netmap_monitor_dtor(struct netmap_adapter *na) in netmap_monitor_dtor() argument
892 (struct netmap_monitor_adapter *)na; in netmap_monitor_dtor()
902 netmap_get_monitor_na(struct nmreq_header *hdr, struct netmap_adapter **na, in netmap_get_monitor_na() argument
1028 *na = &mna->up; in netmap_get_monitor_na()
1029 netmap_adapter_get(*na); in netmap_get_monitor_na()