[dpdk-dev] [Bug 430] i40e has wrong byte order in rte_flow_item_eth (ethdev)

bugzilla at dpdk.org bugzilla at dpdk.org
Sun Mar 29 16:48:37 CEST 2020


https://bugs.dpdk.org/show_bug.cgi?id=430

            Bug ID: 430
           Summary: i40e has wrong byte order in rte_flow_item_eth
                    (ethdev)
           Product: DPDK
           Version: 20.02
          Hardware: All
                OS: All
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: ethdev
          Assignee: dev at dpdk.org
          Reporter: barbette at kth.se
                CC: arybchenko at solarflare.com, beilei.xing at intel.com,
                    qi.z.zhang at intel.com, thomas at monjalon.net
  Target Milestone: 20.05

Following a recent discussion on the mailing list, I'm opening this bug because
rte_flow_item_eth takes its ethertype in host byte order with
i40e, while it should be in network byte order.

In consequence, with testpmd one must give the inverted endianness for the
ethertype :
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

I only tested the ethertype, but it may affect other fields?

As per Andrew Rybchenko's comment, the type of rte_flow_item_eth is rte_be16_t
so the correct behaviour is network byte order.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the dev mailing list