[dpdk-dev] [PATCH 0/2] ethdev: add GENEVE to flow API

Adrien Mazarguil adrien.mazarguil at 6wind.com
Thu Nov 23 10:39:44 CET 2017


Hi Andrew,

On Mon, Nov 20, 2017 at 08:21:59AM +0000, Andrew Rybchenko wrote:
> enum rte_flow_item_type states that items matching protocol headers
> must be stacked in the same order as the protocol layers to match.
> As the result the patch changes ABI since Geneve is added just after
> VXLAN (the closest protocol).
> 
> In fact as far as I can see many items do not follow the requirement
> already. May be the comment/requirement should be removed and GENEVE
> should be added at the end of the list. If so, should be keep it just
> after VXLAN in all other places or move after ESP as well?

Perhaps documentation is unclear, this requirement only applies to
applications when constructing patterns out of those items (e.g. to make
sense, TCP is supposed to come after IPv4, not before).

New item/action definitions must obviously be added at the end of both lists
to avoid ABI breakage, there is no specific order to follow other than that.

What may have confused you is most of them are apparently ordered by
protocol layer, that's because those are here from day one; it's not the
case anymore starting with E_TAG, which was added much later.

Besides addressing the ABI breakage, I don't see any issue with adding
GENEVE to rte_flow, I only have a few more comments on subsequent patches in
the series. Otherwise good job, looks like you didn't miss anything.

-- 
Adrien Mazarguil
6WIND


More information about the dev mailing list