[PATCH v4 0/2] app/testpmd: assign share group dynamically

Dariusz Sosnowski
2026-03-25T19:10:00Z

Our internal regression tests have flagged issues with shared Rx queues.
Specifically, issues with domain mismatches:

Invalid shared rxq config: switch domain mismatch ports 0 and 3

These started appearing after commit [1] which added checks
for globally unique share group indexes.
This could be worked around with --rxq-share=N option,
but it does not allow proper testing of all use cases [2].

This patchset addresses that by changing behavior of --rxq-share parameter.
Instead of relying on user to select proper parameter value,
testpmd will dynamically assign globally unique share group index
to each unique switch and Rx domain.

[1]: 8ebba91086f4 ("app/testpmd: fail on shared Rx queue switch mismatch")
[2]: https://inbox.dpdk.org/dev/yotjxacqrodttraqrr3r6ftut4cty66g6cjnr5ughswtatapgh@gqqkftskp3qq/

v4:
- Use short circuit return try_release_share_group().

v3:
- Use short circuit return in assign_share_group().
- Replace assert in assign_share_group() with error checking.
- Do not require optional argument with --rxq-share option.
- Fix typo in docs: update -> updates

v2:
- Add releasing share groups when ports are closed.
- Add static to share_group_slots array definition.
- Remove double empty line in revert commit.

Dariusz Sosnowski (2):
app/testpmd: assign share group dynamically
app/testpmd: revert switch domain mismatch check

app/test-pmd/parameters.c | 14 +--
app/test-pmd/testpmd.c | 121 ++++++++++++++++----------
app/test-pmd/testpmd.h | 2 +-
doc/guides/testpmd_app_ug/run_app.rst | 10 +--
4 files changed, 86 insertions(+), 61 deletions(-)

--
2.47.3