[dpdk-dev] rte_flow: Different devices have different field indianess?

Tom Barbette barbette at kth.se
Fri Mar 27 15:51:23 CET 2020


Le 27/03/2020 à 15:44, Andrew Rybchenko a écrit :
> On 3/27/20 5:29 PM, Tom Barbette wrote:
>> Hi all,
>>
>> It seems rte_flow_item_eth takes its ethertype in host byte order with
>> i40e, but in network byte order with mlx5.
> 
> If so, it is definitely bug in i40e, since struct rte_flow_item_eth
> defines type as rte_be16_t type.

Indeed, with testpmd I would expect the first one to be the one that works:

testpmd> flow create 0 ingress pattern eth type is 0x0800 / end actions 
mark id 5  / end
port_flow_complain(): Caught PMD error type 13 (specific pattern item): 
cause: 0x227fd75540, Unsupported ether_type.: Invalid argument
testpmd> flow create 0 ingress pattern eth type is 0x0008 / end actions 
mark id 5  / end
Flow rule #0 created


> 
>> Wouldn't it be nice to unify that? Else is there a way to know in which
>> byte order the spec should be given? I guess that expands to all fields,
>> but I only compared the ethertype field.
>>
>> Thanks,
>>
>> Tom
> 



More information about the dev mailing list