* [PATCH] doc/mlx5: document firmware requirement for flex item @ 2025-07-08 11:49 Khadem Ullah 2025-07-15 12:52 ` Dariusz Sosnowski 0 siblings, 1 reply; 4+ messages in thread From: Khadem Ullah @ 2025-07-08 11:49 UTC (permalink / raw) To: dev; +Cc: rasland, stable, Khadem Ullah, Khadem Ullah Some BlueField firmware versions (e.g. 24.30.1004) do not support flex item definitions using FIELD_MODE_FIXED with size set to 0, such as in 'next_header'. Attempting to use this configuration may result in the following error: 'unsupported header length field mode (FIXED)' This is resolved starting from firmware version 24.38.1002. The patch adds a note to the mlx5 guide explaining the firmware requirement for such flex item configurations. Fixes: 16508bfd0816 ('net/mlx5: doc: add flex item specifications in mlx5 guide') Cc: stable@dpdk.org Signed-off-by: Khadem Ullah <14pwcse1224@uetpeshawar.edu.pk> --- doc/guides/nics/mlx5.rst | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/doc/guides/nics/mlx5.rst b/doc/guides/nics/mlx5.rst index c3a350d24e..1b0e3efc41 100644 --- a/doc/guides/nics/mlx5.rst +++ b/doc/guides/nics/mlx5.rst @@ -476,6 +476,10 @@ Limitations - In flex item configuration, ``next_header.field_base`` value must be byte aligned (multiple of 8). - Modify field with flex item, the offset must be byte aligned (multiple of 8). + .. note:: + Some firmware versions (e.g. 24.30.1004) do not support + ``next_header`` with ``field_mode = FIELD_MODE_FIXED`` and zero size. + A newer firmware (e.g. >= 24.38.1002) is required to support this configuration. - Match on random value: -- 2.43.0 ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] doc/mlx5: document firmware requirement for flex item 2025-07-08 11:49 [PATCH] doc/mlx5: document firmware requirement for flex item Khadem Ullah @ 2025-07-15 12:52 ` Dariusz Sosnowski 2025-07-16 7:49 ` Khadem Ullah 0 siblings, 1 reply; 4+ messages in thread From: Dariusz Sosnowski @ 2025-07-15 12:52 UTC (permalink / raw) To: Khadem Ullah Cc: dev, rasland, stable, Khadem Ullah, Viacheslav Ovsiienko, Bing Zhao, Ori Kam, Suanming Mou, Matan Azrad + mlx5 maintainers On Tue, Jul 08, 2025 at 07:49:21AM -0400, Khadem Ullah wrote: > Some BlueField firmware versions (e.g. 24.30.1004) do not support flex item > definitions using FIELD_MODE_FIXED with size set to 0, such as in 'next_header'. > Attempting to use this configuration may result in the following error: > > 'unsupported header length field mode (FIXED)' > > This is resolved starting from firmware version 24.38.1002. Could you please share the DPDK version you used and a code sample with flex item configuration? I checked internally and I see no change which would trigger a change in behavior regarding 'unsupported header length field mode (FIXED)' error message. > > The patch adds a note to the mlx5 guide explaining the firmware requirement > for such flex item configurations. > > Fixes: 16508bfd0816 ('net/mlx5: doc: add flex item specifications in mlx5 guide') > Cc: stable@dpdk.org > Signed-off-by: Khadem Ullah <14pwcse1224@uetpeshawar.edu.pk> > --- > doc/guides/nics/mlx5.rst | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/doc/guides/nics/mlx5.rst b/doc/guides/nics/mlx5.rst > index c3a350d24e..1b0e3efc41 100644 > --- a/doc/guides/nics/mlx5.rst > +++ b/doc/guides/nics/mlx5.rst > @@ -476,6 +476,10 @@ Limitations > - In flex item configuration, ``next_header.field_base`` value > must be byte aligned (multiple of 8). > - Modify field with flex item, the offset must be byte aligned (multiple of 8). > + .. note:: > + Some firmware versions (e.g. 24.30.1004) do not support > + ``next_header`` with ``field_mode = FIELD_MODE_FIXED`` and zero size. > + A newer firmware (e.g. >= 24.38.1002) is required to support this configuration. > > - Match on random value: > > -- > 2.43.0 > Best regards, Dariusz Sosnowski ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] doc/mlx5: document firmware requirement for flex item 2025-07-15 12:52 ` Dariusz Sosnowski @ 2025-07-16 7:49 ` Khadem Ullah 2025-07-21 13:21 ` Dariusz Sosnowski 0 siblings, 1 reply; 4+ messages in thread From: Khadem Ullah @ 2025-07-16 7:49 UTC (permalink / raw) To: dsosnowski Cc: dev, rasland, stable, viacheslavo, bingz, orika, suanmingm, matan Hi Dariusz, Thanks for the follow-up. I was using DPDK v23.11 with the following flex item configuration: { "next_header": { "field_mode": "FIELD_MODE_FIXED", "field_size": 0, "field_base": 0 }, "next_protocol": { "field_mode": "FIELD_MODE_FIXED", "field_size": 8, "field_base": 72 }, "sample_data": [ { "field_mode": "FIELD_MODE_FIXED", "field_size": 32, "field_base": 0 }, { "field_mode": "FIELD_MODE_FIXED", "field_size": 32, "field_base": 32 }, { "field_mode": "FIELD_MODE_FIXED", "field_size": 32, "field_base": 64 }, { "field_mode": "FIELD_MODE_FIXED", "field_size": 32, "field_base": 96 } ], "input_link": [ { "item": "eth type is 0x08802" } ], "output_link": [ { "item": "udp", "next": 17 }, { "item": "tcp", "next": 6 } ] } With firmware version 24.30.1004 (MT_0000000704), the following error was produced: port-0: flex item #3 creation failed: unsupported header length field mode (FIXED) After upgrading to firmware version 24.38.1002, the same configuration succeeded. Example flow after upgrade: testpmd> flow flex_item pattern 2 spec 45000000000000000000000001020304 mask FF0000000000000000000000FFFFFFFF created pattern #2 testpmd> flow create 0 ingress pattern eth / ipv4 / udp / flex item is 3 pattern is 2 / end actions mark id 1 / queue index 0 / end Flow rule #0 created It appears this issue was resolved at the firmware level. Best regards, Khadem Ullah ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] doc/mlx5: document firmware requirement for flex item 2025-07-16 7:49 ` Khadem Ullah @ 2025-07-21 13:21 ` Dariusz Sosnowski 0 siblings, 0 replies; 4+ messages in thread From: Dariusz Sosnowski @ 2025-07-21 13:21 UTC (permalink / raw) To: Khadem Ullah Cc: dev, rasland, stable, viacheslavo, bingz, orika, suanmingm, matan On Wed, Jul 16, 2025 at 03:49:40AM -0400, Khadem Ullah wrote: > Hi Dariusz, > > Thanks for the follow-up. > > I was using DPDK v23.11 with the following flex item configuration: > > { > "next_header": { "field_mode": "FIELD_MODE_FIXED", "field_size": 0, "field_base": 0 }, > "next_protocol": { "field_mode": "FIELD_MODE_FIXED", "field_size": 8, "field_base": 72 }, > "sample_data": [ > { "field_mode": "FIELD_MODE_FIXED", "field_size": 32, "field_base": 0 }, > { "field_mode": "FIELD_MODE_FIXED", "field_size": 32, "field_base": 32 }, > { "field_mode": "FIELD_MODE_FIXED", "field_size": 32, "field_base": 64 }, > { "field_mode": "FIELD_MODE_FIXED", "field_size": 32, "field_base": 96 } > ], > "input_link": [ > { "item": "eth type is 0x08802" } > ], > "output_link": [ > { "item": "udp", "next": 17 }, > { "item": "tcp", "next": 6 } > ] > } > > With firmware version 24.30.1004 (MT_0000000704), the following error was produced: > > port-0: flex item #3 creation failed: unsupported header length field mode (FIXED) Thank you for providing the flex item configuration. Could you share what exactly are you trying to achieve with this flex item configuration? We investigated locally and yes, FW version 24.30.1004 does not fully support flex item yet. The error log misreports the actual root cause of the error, because of a bug in PMD. We'll provide a separate fix for that. The proposed documentation change would also be inaccurate, because different flex item capabilities were added in different FW versions. We will update the documentation with more details regarding that in the same fix. The earliest version where this specific flex item configuration works should be 24.37.1300. However I would advise to use at least FW version 24.39.xxxx versions (this is the oldest relevant LTS FW). > > After upgrading to firmware version 24.38.1002, the same configuration succeeded. > > Example flow after upgrade: > > testpmd> flow flex_item pattern 2 spec 45000000000000000000000001020304 mask FF0000000000000000000000FFFFFFFF > created pattern #2 > > testpmd> flow create 0 ingress pattern eth / ipv4 / udp / flex item is 3 pattern is 2 / end actions mark id 1 / queue index 0 / end > Flow rule #0 created > > It appears this issue was resolved at the firmware level. > > Best regards, > Khadem Ullah > ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2025-07-21 13:21 UTC | newest] Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2025-07-08 11:49 [PATCH] doc/mlx5: document firmware requirement for flex item Khadem Ullah 2025-07-15 12:52 ` Dariusz Sosnowski 2025-07-16 7:49 ` Khadem Ullah 2025-07-21 13:21 ` Dariusz Sosnowski
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).