In current codes, tunnel configuration information is not stored in a device 
configuration, and it will get nothing if application want to retrieve tunnel 
config, so I think it is necessary to add rte_eth_dev_tunnel_configure() 
function is to do the configurations including flow and classification 
information and store it in a device configuration.

And tunneling packet encapsulation operation will benifit from the change.

There are more descriptions for the ABI changes below,

The struct 'rte_eth_tunnel_conf' is a new, its defination like below,
struct rte_eth_tunnel_conf {
       uint16_t tx_queue;
       uint16_t filter_type;   
       struct rte_eth_tunnel_flow flow_tnl;
};

The ABI change announcement of struct 'rte_eth_tunnel_flow' have already sent 
out, refer to [1].  

[1]http://dpdk.org/ml/archives/dev/2015-December/029837.html.

The change of struct 'rte_eth_conf' like below, but it have not finalized yet.
struct rte_eth_conf {
        ...
        uint32_t dcb_capability_en;
        struct rte_fdir_conf fdir_conf; /**< FDIR configuration. */
        struct rte_intr_conf intr_conf; /**< Interrupt mode configuration. */
        struct rte_eth_tunnel_conf *tunnel_conf[RTE_MAX_QUEUES_PER_PORT];
        /**< Tunnel configuration. */
};

v2 change:
  Add more description for the change.

v3 change:
  Change ABI announcement description.

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

diff --git a/doc/guides/rel_notes/deprecation.rst 
b/doc/guides/rel_notes/deprecation.rst
index 5c458f2..9dbe89e 100644
--- a/doc/guides/rel_notes/deprecation.rst
+++ b/doc/guides/rel_notes/deprecation.rst
@@ -23,3 +23,9 @@ Deprecation Notices
 * 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.
+
+* ABI changes are planned for the struct rte_eth_conf in order to add 
'tunnel_conf' variable
+  in the struct to store tunnel configuration when using new API 
rte_eth_dev_tunnel_configure
+  (uint8_t port_id, uint16_t rx_queue, struct rte_eth_tunnel_conf * 
tunnel_conf) to configure
+  tunnel flow and classification information. The release 2.2 does not contain 
these ABI change,
+  but release 2.3 will, and no backward compatibility is planned.
-- 
1.7.7.6

Reply via email to