Setup Tx queue when device is started
Setup Tx queue when device is started
Make sure that it is possible to setup a Tx queue when the Ethernet device is started
Check runtime Tx queue setup capability
Check maximum number of Tx queues
Configure Ethernet device
Setup the queues that were not marked for runtime setup
Start the device
Stop and start the device again to make sure that the device can be stopped while some of its queues are not set up
Prepare mbufs to send and pattern to match from tmpl_pri
Create Ethernet-based CSAP
TST: start listening to network
Ensure that interface is UP on Tester side
Validate and transmit one packet from already started Tx queues on iut_port
Receive packets on iut_port Check that the port has received packets from every started Tx queue, and these packets match the packets sent from iut_port
Setup the queues marked for runtime setup
Restart the device after setup of every queue to start all Tx queues that were setup previously except for deferred start queues. Also make sure that the current state of the queues does not cause device start and stop failures
Prepare mbufs to send and pattern to match from tmpl_sec
TST: start listening to network
Validate and try to transmit the packet from iut_port from txq_deferred_start_ids Tx queues
Check that iut_port port hasn't transmitted any packets
TST: check that no packets arrived
Start deferred queues
TST: continue listening to network
Validate and transmit one packet from every Tx queue on iut_port
Receive packets on iut_port Check that the port has received packets from every Tx queue, and these packets match the packets sent from iut_port
Check that no extra packets are received on Tester
Parameters:
nb_txq |
Tx queue count |
tmpl |
Traffic template |
txq_runtime_setup_ids |
Indices of queues that will be setup and started at run time |
txq_deferred_start_ids |
Indices of queues that will be started at run time |