Lines Matching refs:cb
4521 struct rte_eth_dev_callback *cb, *next; in rte_eth_dev_callback_unregister() local
4549 for (cb = TAILQ_FIRST(&dev->link_intr_cbs); cb != NULL; in rte_eth_dev_callback_unregister()
4550 cb = next) { in rte_eth_dev_callback_unregister()
4552 next = TAILQ_NEXT(cb, next); in rte_eth_dev_callback_unregister()
4554 if (cb->cb_fn != cb_fn || cb->event != event || in rte_eth_dev_callback_unregister()
4555 (cb_arg != (void *)-1 && cb->cb_arg != cb_arg)) in rte_eth_dev_callback_unregister()
4562 if (cb->active == 0) { in rte_eth_dev_callback_unregister()
4563 TAILQ_REMOVE(&(dev->link_intr_cbs), cb, next); in rte_eth_dev_callback_unregister()
4564 rte_free(cb); in rte_eth_dev_callback_unregister()
4745 struct rte_eth_rxtx_callback *cb = rte_zmalloc(NULL, sizeof(*cb), 0); in rte_eth_add_rx_callback() local
4747 if (cb == NULL) { in rte_eth_add_rx_callback()
4752 cb->fn.rx = fn; in rte_eth_add_rx_callback()
4753 cb->param = user_param; in rte_eth_add_rx_callback()
4766 cb, __ATOMIC_RELEASE); in rte_eth_add_rx_callback()
4774 __atomic_store_n(&tail->next, cb, __ATOMIC_RELEASE); in rte_eth_add_rx_callback()
4778 return cb; in rte_eth_add_rx_callback()
4796 struct rte_eth_rxtx_callback *cb = rte_zmalloc(NULL, sizeof(*cb), 0); in rte_eth_add_first_rx_callback() local
4798 if (cb == NULL) { in rte_eth_add_first_rx_callback()
4803 cb->fn.rx = fn; in rte_eth_add_first_rx_callback()
4804 cb->param = user_param; in rte_eth_add_first_rx_callback()
4808 cb->next = rte_eth_devices[port_id].post_rx_burst_cbs[queue_id]; in rte_eth_add_first_rx_callback()
4814 cb, __ATOMIC_RELEASE); in rte_eth_add_first_rx_callback()
4817 return cb; in rte_eth_add_first_rx_callback()
4843 struct rte_eth_rxtx_callback *cb = rte_zmalloc(NULL, sizeof(*cb), 0); in rte_eth_add_tx_callback() local
4845 if (cb == NULL) { in rte_eth_add_tx_callback()
4850 cb->fn.tx = fn; in rte_eth_add_tx_callback()
4851 cb->param = user_param; in rte_eth_add_tx_callback()
4864 cb, __ATOMIC_RELEASE); in rte_eth_add_tx_callback()
4872 __atomic_store_n(&tail->next, cb, __ATOMIC_RELEASE); in rte_eth_add_tx_callback()
4876 return cb; in rte_eth_add_tx_callback()
4893 struct rte_eth_rxtx_callback *cb; in rte_eth_remove_rx_callback() local
4899 for (; *prev_cb != NULL; prev_cb = &cb->next) { in rte_eth_remove_rx_callback()
4900 cb = *prev_cb; in rte_eth_remove_rx_callback()
4901 if (cb == user_cb) { in rte_eth_remove_rx_callback()
4903 __atomic_store_n(prev_cb, cb->next, __ATOMIC_RELAXED); in rte_eth_remove_rx_callback()
4928 struct rte_eth_rxtx_callback *cb; in rte_eth_remove_tx_callback() local
4933 for (; *prev_cb != NULL; prev_cb = &cb->next) { in rte_eth_remove_tx_callback()
4934 cb = *prev_cb; in rte_eth_remove_tx_callback()
4935 if (cb == user_cb) { in rte_eth_remove_tx_callback()
4937 __atomic_store_n(prev_cb, cb->next, __ATOMIC_RELAXED); in rte_eth_remove_tx_callback()