STAT_QMAP_RX
};
-int __rte_experimental
+int
rte_eth_iterator_init(struct rte_dev_iterator *iter, const char *devargs_str)
{
int ret;
return ret;
}
-uint16_t __rte_experimental
+uint16_t
rte_eth_iterator_next(struct rte_dev_iterator *iter)
{
if (iter->cls == NULL) /* invalid ethdev iterator */
return RTE_MAX_ETHPORTS;
}
-void __rte_experimental
+void
rte_eth_iterator_cleanup(struct rte_dev_iterator *iter)
{
if (iter->bus_str == NULL)
struct rte_mbuf;
/**
- * @warning
- * @b EXPERIMENTAL: this API may change without prior notice.
- *
* Initializes a device iterator.
*
* This iterator allows accessing a list of devices matching some devargs.
* @return
* 0 on successful initialization, negative otherwise.
*/
-__rte_experimental
int rte_eth_iterator_init(struct rte_dev_iterator *iter, const char *devargs);
/**
- * @warning
- * @b EXPERIMENTAL: this API may change without prior notice.
- *
* Iterates on devices with devargs filter.
* The ownership is not checked.
*
* @return
* A port id if found, RTE_MAX_ETHPORTS otherwise.
*/
-__rte_experimental
uint16_t rte_eth_iterator_next(struct rte_dev_iterator *iter);
/**
- * @warning
- * @b EXPERIMENTAL: this API may change without prior notice.
- *
* Free some allocated fields of the iterator.
*
* This function is automatically called by rte_eth_iterator_next()
* Device iterator handle initialized by rte_eth_iterator_init().
* The fields bus_str and cls_str are freed if needed.
*/
-__rte_experimental
void rte_eth_iterator_cleanup(struct rte_dev_iterator *iter);
/**
rte_eth_dev_rx_offload_name;
rte_eth_dev_tx_offload_name;
+ rte_eth_iterator_cleanup;
+ rte_eth_iterator_init;
+ rte_eth_iterator_next;
} DPDK_18.08;
rte_eth_dev_owner_set;
rte_eth_dev_owner_unset;
rte_eth_dev_rx_intr_ctl_q_get_fd;
- rte_eth_iterator_cleanup;
- rte_eth_iterator_init;
- rte_eth_iterator_next;
rte_eth_switch_domain_alloc;
rte_eth_switch_domain_free;
rte_flow_conv;