mlx5 ConnectX6 dpdk flow create integrity not supported inner l4_ok l3_ok

Red Hat Enterprise Linux Server release 7.9 (Maipo)

ofed_info -s

MLNX_OFED_LINUX-5.5-1.0.3.2:

mlxfwmanager

Querying Mellanox devices firmware …

Device #1:


Device Type: ConnectX6

Part Number: MCX653106A-ECA_Ax

Description: ConnectX-6 VPI adapter card; H100Gb/s (HDR100; EDR IB and 100GbE); dual-port QSFP56; PCIe3.0 x16; tall bracket; ROHS R6

PSID: MT_0000000224

PCI Device Name: 0000:98:00.0

Base MAC: b8cef6f974ee

Versions: Current Available

FW 20.32.1010 N/A

PXE 3.6.0502 N/A

UEFI 14.25.0017 N/A

Status: No matching image found

./dpdk-testpmd -l 5,7,9,11,13,15,17 -n 4 – -i --rxq 6 --txq 6 --nb-cores 6 --rxd 2048 --txd 2048 --portmask 0xff --enable-rx-cksum

flow create 0 ingress pattern eth / ipv4 / tcp / integrity value mask 8 value spec 8 / end actions count / queue index 0 / end

return error msg: integrity_item not supported: Operation not supported

gdb dpdk-testpmd find

dpdk-21.11\drivers\common\mlx5 ->mlx5_devx_cmds.c->mlx5_devx_query_pkt_integrity_match()

printf("inner_l3_ok =%d\n ",

MLX5_GET(flow_table_nic_cap, hcattr,

ft_field_support_2_nic_receive.inner_l3_ok)

);

printf("inner_l4_ok =%d\n ",

MLX5_GET(flow_table_nic_cap, hcattr,

ft_field_support_2_nic_receive.inner_l4_ok)

);

printf("outer_l3_ok =%d\n ",

MLX5_GET(flow_table_nic_cap, hcattr,

ft_field_support_2_nic_receive.outer_l3_ok)

);

printf("outer_l4_ok =%d\n ",

MLX5_GET(flow_table_nic_cap, hcattr,

ft_field_support_2_nic_receive.outer_l4_ok)

);

printf("inner_ipv4_checksum_ok =%d\n ",

MLX5_GET(flow_table_nic_cap, hcattr,

ft_field_support_2_nic_receive.inner_ipv4_checksum_ok)

);

printf("outer_ipv4_checksum_ok =%d\n ",

MLX5_GET(flow_table_nic_cap, hcattr,

ft_field_support_2_nic_receive.outer_ipv4_checksum_ok)

);

inner_l3_ok =0

inner_l4_ok =0

outer_l3_ok =0

outer_l4_ok =0

inner_ipv4_checksum_ok =0

outer_ipv4_checksum_ok =0