Check Rx descriptor status correctnessΒΆ

Prove that Rx descriptor status callback readings are consistent

The test is to confirm that Rx descriptor status callback provides accurate readings with respect to certain descriptors in the Rx ring under different circumstances (descriptors made available to the HW for packet reception, descriptors filled by the HW and not yet processed, descriptors captured by Rx burst operation) and in case of reserved entries

  1. Prepare TEST_ETHDEV_CONFIGURED state

  2. Setup Rx queue with the highest free threshold possible

  3. Prepare TEST_ETHDEV_STARTED state

  4. Check that the first descriptor is exposed to the HW

  5. Check that the last usable descriptor is exposed to the HW

  6. Verify reserved descriptors (if any)

  7. Check that non-existing descriptor status retrieval is rejected

  8. Cook traffic template

  9. Ensure that interface is UP on Tester side

  10. Send one packet to IUT

  11. Check that the first descriptor is done

  12. Grab the packet from the ring

  13. Check that the first descriptor is now exposed to the HW

  14. Check that the last usable descriptor is now hold by the driver

Parameters:

template

Traffic template