Proposing to replace protocol header fields in the ``rte_flow_item_*`` structures with the protocol structs, like:
Current ``struct rte_flow_item_eth``, struct rte_flow_item_eth { struct rte_ether_addr dst; struct rte_ether_addr src; rte_be16_t type; uint32_t has_vlan:1; uint32_t reserved:31; } will become struct rte_flow_item_eth { struct rte_ether_hdr hdr; uint32_t has_vlan:1; uint32_t reserved:31; } This is both for documenting the intention and to be sure ``rte_flow_item_*`` always starts with complete protocol header. Already many ``rte_flow_item_*`` structs implemented to have protocol struct, target is convert all to this usage. Signed-off-by: Ferruh Yigit <ferruh.yi...@intel.com> --- Cc: Thomas Monjalon <tho...@monjalon.net> Cc: Andrew Rybchenko <andrew.rybche...@oktetlabs.ru> Cc: Ori Kam <or...@nvidia.com> --- doc/guides/rel_notes/deprecation.rst | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst index 96986fabd598..a2fa0c196472 100644 --- a/doc/guides/rel_notes/deprecation.rst +++ b/doc/guides/rel_notes/deprecation.rst @@ -88,6 +88,13 @@ Deprecation Notices will be limited to maximum 256 queues. Also compile time flag ``RTE_ETHDEV_QUEUE_STAT_CNTRS`` will be removed. +* ethdev: The flow API matching pattern structures, ``struct rte_flow_item_*``, + should start with relevant protocol header. + Some matching pattern structures implements this by duplicating protocol header + fields in the struct. To clarify the intention and to be sure protocol header + is intact, will replace those fields with relevant protocol header struct. + Target is v21.02 release and this should not change the ABI. + * sched: To allow more traffic classes, flexible mapping of pipe queues to traffic classes, and subport level configuration of pipes and queues changes will be made to macros, data structures and API functions defined -- 2.26.2