Bug 1134

Summary: net/i40e Tx prepare unexpectedly rejects packet with tunnel type set and no offloads requested
Product: DPDK Reporter: Andrew Rybchenko (andrew.rybchenko)
Component: ethdevAssignee: Zhang Yuying (yuying.zhang)
Status: UNCONFIRMED ---    
Severity: normal CC: beilei.xing, dev, kaiwenx.deng
Priority: Normal    
Version: 22.11   
Target Milestone: ---   
Hardware: All   
OS: All   

Description Andrew Rybchenko 2022-11-30 08:19:36 CET
net/i40e Tx prepare unexpectedly rejects packet with tunnel type set and no offloads requested

Tunnel type (e.g. RTE_MBUF_F_TX_TUNNEL_VXLAN) is just an auxiliary information which does not request any Tx offload itself (similar to RTE_MBUF_F_TX_IPV4).
So, if a packet has the tunnel type set it should not be rejected by i40e_simple_prep_pkts() as unsupported offload requested. I.e. RTE_MBUF_F_TX_TUNNEL_MASK should be included in I40E_TX_OFFLOAD_SIMPLE_SUP_MASK.

Found using [1]. Line 48 [2] sets ol_flags. Line 79 [3] shows that the packet is rejected by Tx prepare.  Requested Tx offload can be found in line 31 [4]

[1] https://ts-factory.io/bublik/v2/log/243407?focusId=249938&mode=treeAndinfoAndlog
[2] https://ts-factory.io/logs/2022/11/29/balin-x710-p0-22/html/node_id6531.html#line48
[3] https://ts-factory.io/logs/2022/11/29/balin-x710-p0-22/html/node_id6531.html#line79
[3] https://ts-factory.io/logs/2022/11/29/balin-x710-p0-22/html/node_id6531.html#line31
Comment 1 dengkaiwen 2023-11-03 07:55:06 CET
please offer the reproduce steps with standard DPDK API like testpmd, l3fwd and other examples.