net/mlx5: fix metadata item endianness conversion
authorViacheslav Ovsiienko <viacheslavo@mellanox.com>
Fri, 17 Jan 2020 14:59:32 +0000 (14:59 +0000)
committerFerruh Yigit <ferruh.yigit@intel.com>
Fri, 17 Jan 2020 18:59:19 +0000 (19:59 +0100)
commit39c09c22e5b5c46cf8f44826a1c759e036f3af3a
tree74aeb1d37232f645e449615c86048001f5493bfa
parentfde4341b665786632c6e4375ac25af65a3a5eebb
net/mlx5: fix metadata item endianness conversion

The mlx5 datapath does not implement any endianness conversions
for the metadata being sent and received to provide the better
performance (because these conversions would be performed for
each packet). These metadata are also involved into flow processing
(there might be some flows matching on metadata patterns or setting
the new metadata values) inside the NIC. It order to configure
hardware in correct way all necessary endianness conversions are
done by rte_flow handling code (only once on flow creation). This
patch fixes one of these conversions for the little-endian hosts
in case if META/MARK items are less than 32 bits.

Fixes: acfcd5c52f94 ("net/mlx5: update meta register matcher set")
Cc: stable@dpdk.org
Signed-off-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
Acked-by: Matan Azrad <matan@mellanox.com>
drivers/net/mlx5/mlx5_flow_dv.c