[dpdk-dev] doc: announce ABI change for struct rte_eth_tunnel_flow

Message ID 1449639461-9718-1-git-send-email-jijiang.liu@intel.com (mailing list archive)
State Rejected, archived
Headers

Commit Message

Jijiang Liu Dec. 9, 2015, 5:37 a.m. UTC
  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@intel.com>
---
 doc/guides/rel_notes/deprecation.rst |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)
  

Comments

Wenzhuo Lu Dec. 9, 2015, 5:42 a.m. UTC | #1
Hi,

Acked-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
  
Thomas Monjalon Dec. 14, 2015, 3:03 p.m. UTC | #2
2015-12-09 13:37, Jijiang Liu:
> 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.

You have not explained what the changes are for.
So it's really difficult to have an opinion.
Please describe an use case.

PS: "filed" -> "field"
  
Jijiang Liu Dec. 15, 2015, 1:17 a.m. UTC | #3
> -----Original Message-----
> From: Thomas Monjalon [mailto:thomas.monjalon@6wind.com]
> Sent: Monday, December 14, 2015 11:04 PM
> To: Liu, Jijiang
> Cc: dev@dpdk.org
> Subject: Re: [dpdk-dev] [PATCH] doc: announce ABI change for struct
> rte_eth_tunnel_flow
> 
> 2015-12-09 13:37, Jijiang Liu:
> > 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.
> 
> You have not explained what the changes are for.
> So it's really difficult to have an opinion.
> Please describe an use case.
For i40e flow director, it can use more fields such as inner destination IP, inner MAC outer destination MAC and outer destination IP to do classification for tunneling packet.
Otherwise, we also can use this structure to store tunnel flow configuration, not just for classification.

> PS: "filed" -> "field"
  
Jijiang Liu Dec. 15, 2015, 2:05 a.m. UTC | #4
> 
> > -----Original Message-----
> > From: Thomas Monjalon [mailto:thomas.monjalon@6wind.com]
> > Sent: Monday, December 14, 2015 11:04 PM
> > To: Liu, Jijiang
> > Cc: dev@dpdk.org
> > Subject: Re: [dpdk-dev] [PATCH] doc: announce ABI change for struct
> > rte_eth_tunnel_flow
> >
> > 2015-12-09 13:37, Jijiang Liu:
> > > 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.
> >
> > You have not explained what the changes are for.
> > So it's really difficult to have an opinion.
> > Please describe an use case.
> For i40e flow director, it can use more fields such as inner destination IP,
> inner MAC outer destination MAC and outer destination IP to do
> classification for tunneling packet.
> Otherwise, we also can use this structure to store tunnel flow configuration,
> not just for classification.
> 
> > PS: "filed" -> "field"

After aligning with Jingjing, she have already sent ABI change announcement for struct 'rte_eth_fdir_flow'to extend input set of FD, refer to[1].
And change of struct 'rte_eth_tunnel_flow' I want to announce can be included in hers, so I don't need to announce it again. Thanks. 

[1]http://dpdk.org/ml/archives/dev/2015-November/027915.html
  

Patch

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.