The struct 'rte_eth_tunnel_flow' is only used by struct 'rte_eth_fdir_flow' 
now, but its name is generic,
and I plan to extend new fileds like below to support generic configuration for 
tunneling packet.

struct rte_eth_tunnel_flow {
        enum rte_eth_fdir_tunnel_type tunnel_type; /**< Tunnel type to match. */
        uint32_t tunnel_id;                        /**< Tunnel ID to match. 
TNI, VNI... */
        uint16_t flags;
        struct ether_addr outer_mac_src;
        struct ether_addr outer_mac_dst;
        union {
                struct rte_eth_ipv4_flow outer_ipv4;
                struct rte_eth_ipv6_flow outer_ipv6;
       };
        uint16_t dst_port;
        uint16_t src_port;
        struct ether_addr mac_addr;                /**< Mac address to match. */
        union {
                struct rte_eth_ipv4_flow ipv4;
                struct rte_eth_ipv6_flow ipv6;
        };
 };

Note: It have not finalized yet.

Signed-off-by: Jijiang Liu <jijiang.liu at intel.com>
---
 doc/guides/rel_notes/deprecation.rst |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/doc/guides/rel_notes/deprecation.rst 
b/doc/guides/rel_notes/deprecation.rst
index 1c7ab01..5c458f2 100644
--- a/doc/guides/rel_notes/deprecation.rst
+++ b/doc/guides/rel_notes/deprecation.rst
@@ -19,3 +19,7 @@ Deprecation Notices
   and table action handlers will be updated:
   the pipeline parameter will be added, the packets mask parameter will be
   either removed (for input port action handler) or made input-only.
+
+* ABI changes are planned for struct rte_eth_tunnel_flow in order to extend 
new fileds to support
+  tunneling packet configuration in unified tunneling APIs. The release 2.2 
does not contain these ABI
+  changes, but release 2.3 will, and no backwards compatibility is planned.
-- 
1.7.7.6

Reply via email to