net/i40e: support TSO on tunneling packet
authorJianfeng Tan <jianfeng.tan@intel.com>
Mon, 1 Aug 2016 03:56:54 +0000 (03:56 +0000)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Sun, 9 Oct 2016 21:19:15 +0000 (23:19 +0200)
commitc59faf3fe8fe6dbd99e8cd9d703839728264c5ae
tree0f94cd3ce74d2ca887465de0732d8dbe4cd821f6
parent63c0d74daaa9a807fbca8a3e363bbe41d6fb715f
net/i40e: support TSO on tunneling packet

To enable Tx side offload on tunneling packet, driver should set
correct tunneling parameters: (1) EIPT, External IP header type;
(2) EIPLEN, External IP; (3) L4TUNT; (4) L4TUNLEN. This parsing
behavior is based on (ol_flag & PKT_TX_TUNNEL_MASK). And when
it's a tunneling packet, MACLEN defines the outer L2 header.

Also, we define TSO on each kind of tunneling type as a capabilities.
Now only i40e declares to support them.

Signed-off-by: Zhe Tao <zhe.tao@intel.com>
Signed-off-by: Jianfeng Tan <jianfeng.tan@intel.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
drivers/net/i40e/i40e_ethdev.c
drivers/net/i40e/i40e_rxtx.c
lib/librte_ether/rte_ethdev.h