On Fri, 15 Jan 2016 15:43:56 +0100 Tomasz Kulasek <tomaszx.kulasek at intel.com> wrote:
> Many sample apps include internal buffering for single-packet-at-a-time > operation. Since this is such a common paradigm, this functionality is > better suited to being inside the core ethdev API. > The new APIs in the ethdev library are: > * rte_eth_tx_buffer - buffer up a single packet for future transmission > * rte_eth_tx_buffer_flush - flush any unsent buffered packets > * rte_eth_tx_buffer_set_err_callback - set up a callback to be called in > case transmitting a buffered burst fails. By default, we just free the > unsent packets. > > As well as these, an additional reference callback is provided, which > frees the packets (as the default callback does), as well as updating a > user-provided counter, so that the number of dropped packets can be > tracked. > > The internal buffering of packets for TX in sample apps is no longer > needed, so this patchset also replaces this code with calls to the new > rte_eth_tx_buffer* APIs in: The pipeline code also has its own implementation of this.