Commit f014776
committed
Multqueue Discovery: Allow to set down interfaces
The MQ discovery test is designed to have a 1:1 match between sriov
interfaces in trex VM and dpdk interfaces in testpmd-dpdk-dut VM. This
is a typical workflow deployed by Pre Tempest stage and used in
Multiqueue Discovery stage:
+-------------------------+----------------------------------+
| Name | Networks |
+-------------------------+----------------------------------+
| testpmd-dpdk-dut | dpdk_net_nic0_167=10.10.167.143; |
| | dpdk_net_nic1_168=10.10.168.160 |
| trex | sriov_net_167=10.10.167.149; |
| | sriov_net_168=10.10.168.164 |
+-------------------------+----------------------------------+
The trex VM will inject traffic in sriov_net_167 and sriov_net_168 and
it will be received in dpdk_net_nic0_167 and dpdk_net_nic1_168
respectively on testpmd-dpdk-dut.
In MQ exclusively dedicated scenarios we have a NIC configuration like
this:
- type: ovs_user_bridge
name: br-dpdk0
mtu: 9000
use_dhcp: false
members:
- type: ovs_dpdk_port
name: dpdk2
mtu: 9000
rx_queue: 3
members:
- type: interface
name: nic5
- type: ovs_user_bridge
name: br-dpdk1
mtu: 9000
use_dhcp: false
members:
- type: ovs_dpdk_port
name: dpdk3
mtu: 9000
rx_queue: 3
members:
- type: interface
name: nic6
Along with this config in tempest_config.yml:
pmd_rxq_affinity:
- interface: "dpdk2"
pmd_rxq_affinity: "0:3,1:5,2:7"
- interface: "dpdk3"
pmd_rxq_affinity: "0:3,1:5,2:7"
Using the configuration above we got the 1:1 matching between sriov
and dpdk interfaces.
However, for non MQ exclusively dedicated scenarios we have a NIC
configuration like this:
- type: ovs_user_bridge
name: br-dpdk0
mtu: 9000
use_dhcp: false
members:
- type: ovs_dpdk_bond
name: dpdkbond1
mtu: 9000
rx_queue: 3
members:
- type: ovs_dpdk_port
name: dpdk2
members:
- type: interface
name: nic5
- type: ovs_dpdk_port
name: dpdk3
members:
- type: interface
name: nic6
- type: ovs_user_bridge
name: br-dpdk1
mtu: 9000
use_dhcp: false
members:
- type: ovs_dpdk_port
name: dpdk4
mtu: 9000
rx_queue: 3
members:
- type: interface
name: nic4
Then the test failed because the injected traffic in sriov_net_167 and
sriov_net_168 is received in dpdk2, dpdk3, dpdk4 (no 1:1):
sriov_net_167 -> dpdk2, dpdk3
sriov_net_168 -> dpdk4
Since non expected traffic deteced in one of the dpdk interfaces and
error error like this was raised:
Traceback (most recent call last):
File "/opt/trex/current/multiqueue.py", line 486, in <module>
main()
File "/opt/trex/current/multiqueue.py", line 461, in main
ast.literal_eval(args.pps)),
File "/opt/trex/current/multiqueue.py", line 190, in parse_pmd_stats
queue = queues_json[port_index]["queues"][str(queue_id)]
KeyError: '3'
To solve this issue the following config in tempest_config.yml is
necessary:
pmd_rxq_affinity:
- interface: "dpdk2"
pmd_rxq_affinity: "0:3,1:5,2:7"
- interface: "dpdk4"
pmd_rxq_affinity: "0:3,1:5,2:7"
Along with this new ansible variable:
testpmd_down_interfaces:
- bridge: "br-dpdk0"
interface: "dpdk3"
This change provides support for testpmd_down_interfaces. This way,
bringing down one of the dpdk interfaces the 1:1 relatioship between
sriov and dpdk interfaces is kept and the MQ Discovery test can be
executed successfully
Change-Id: I46382eb519d11851529f062d7268944e9b32302f
(cherry picked from commit e69ba19)1 parent 7c8e6ef commit f014776
File tree
2 files changed
+16
-0
lines changed- playbooks/tripleo/multiqueue
2 files changed
+16
-0
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
125 | 125 | | |
126 | 126 | | |
127 | 127 | | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
128 | 134 | | |
129 | 135 | | |
130 | 136 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
20 | 20 | | |
21 | 21 | | |
22 | 22 | | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
23 | 28 | | |
24 | 29 | | |
25 | 30 | | |
| |||
143 | 148 | | |
144 | 149 | | |
145 | 150 | | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
146 | 156 | | |
147 | 157 | | |
148 | 158 | | |
| |||
0 commit comments