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

Thomas Monjalon thomas.monjalon at 6wind.com
Mon Jan 23 16:25:28 CET 2017


Thanks for bringing a new convenient API.

2017-01-20 11:01, Billy McFall:
> Based on a request from Damjan Marion and seconded by Keith Wiles, see
> dpdk-dev mailing list from 11/21/2016,

Generally we use links to ML archives to show prior discussions.

> 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.

Before considering to use such API, user apps may check how well it
is supported by drivers in this table:

Please add this feature in the appropriate files:
	doc/guides/nics/features/default.ini in patch 1
	doc/guides/nics/features/e1000.ini in patch 2
	doc/guides/nics/features/vhost.ini in patch 3

Then it will be introduced in the beginning of the 17.05 cycle.
So more drivers could be implemented before the 17.05 release.
Does it sound good?

PS: please use --in-reply-to when sending new versions to keep track
of versions changes and discussions.

More information about the dev mailing list