Check RTE flow API rules implying RSS actions

Make sure that RTE flow API RSS action is carried out correctly

The test affirms that RSS flow action has proper effect on ingress traffic

  1. Determine Rx settings based on the flow rule

  2. Arrange a handful of Rx queues

  3. Prepare TEST_ETHDEV_INITIALIZED state

  4. Check maximum number of Rx queues

  5. Enable isolated mode if need be

  6. Query global RSS key and RSS HF if need be

    • Prepare TEST_ETHDEV_CONFIGURED state

    • Set device state to dummy value to allow to reconfigure device with the new MQ mode. This is acceptable because device configure API may be called multiple times.

  7. Prepare TEST_ETHDEV_STARTED state

  8. Change destination MAC to NIC MAC if it is present in pattern and promiscuous is disabled

  9. Validate and create flow_rule_rss

  10. Produce a template to generate traffic expected by the flow rule

  11. Enable promiscuous mode if need be

  12. Ensure that interface is UP on Tester side

  13. Generate traffic and obtain an overall pattern

  14. Make sure that traffic hits the relevant queues

  15. Produce a secondary template to generate irrelevant traffic

  16. Generate irrelevant traffic and obtain an overall pattern

  17. Make sure that traffic now hits the default queue (if need be)

Parameters:

flow_rule_rss

A flow rule featuring RSS action

isolated

Isolated mode toggle

promiscuous

Promiscuous mode toggle