DPDK Error Failed to create flex item: unsupported header length field mode

I tried to set up the flex flow through DPDK in the same way you did it in holoscan, but I got the following error when testing with our bluefield:

Failed flow validation: -22
Failed to create flex item: unsupported header length field mode (FIXED)

Your code does the same thing: holohub/operators/advanced_network/advanced_network/managers/dpdk/adv_network_dpdk_mgr.cpp at 470551b152ce5ccd1ce914c9d9d82833f3dde405 · nvidia-holoscan/holohub · GitHub

The bluefield is MT43244 fw 32.45.1020.

Q1. Do our bluefields (MT43244) not support this type of matching, or is there something I’m missing?

Q2. Maybe they have to be switched to a different mode?

Hi Dan,

Please check that the following parameters are set in mlxconfig:

FLEX_PARSER_PROFILE_ENABLE=4

PROG_PARSE_GRAPH=1

Regards,

Chen

Chen, I appreciate your assistance with this..

I’m working with another engineer on this..

The flow validation issue didn’t go away, but I eliminated it a different way. The FIXED error went away, and I’ve got things working now. There’s more work to do to fully integrate it, but it seems to work now.

The Engineer I’m working with stated,

“The flow parsing issue is unrelated to the main flow parsing issue, so I’d consider the issue solved.

holoscan was setting up a jump rule from group 0 to group 1 and then adding the flow rule to group 1. The error is related to the jump rule. I just removed the jump rule and added the flow rules to group 0 instead and it works.”

So the issue can be closed.