[dpdk-dev] [PATCH v8 0/3] new API to free consumed buffers in Tx ring

Ferruh Yigit ferruh.yigit at intel.com
Wed Apr 19 18:25:37 CEST 2017


On 3/24/2017 6:55 PM, Billy McFall wrote:
> See request from 11/21/2016:
>   http://dpdk.org/ml/archives/dev/2016-November/050585.html
> 
> Add a new API to free consumed buffers on TX ring. This addresses two
> scenarios:
> 1) Flooding a packet and want to reuse existing mbuf to avoid a packet
> copy. Increment the reference count of the packet and poll new API until
> reference count is decremented.
> 2) Application runs out of mbufs, or resets and is preparing for
> additional run, call API to free consumed packets so processing can
> continue.
> 
> API will return the number of packets freed (0-n) or error code if
> feature not supported (-ENOTSUP) or input invalid (-ENODEV).
> 
> API for e1000 igb driver and vHost driver have been implemented. Other
> drivers can be implemented over time. Some drivers implement a Tx done
> flush routine that should be reused where possible. e1000 igb driver
> and vHost driver do not have such functions.

Another reminder for PMDs. This is new eth_dev_ops, described above:
"tx_done_cleanup"

Currently only implemented by igb and vhost. Other PMDs feel free to
implement new ops.

Thanks,
ferruh


More information about the dev mailing list