# e.g. io|mac|mac_retry|macswap|flowgen|rxonly|txonly|csum|icmpecho|...
# Note: Option "mac_retry" has been changed to "mac retry" since DPDK v16.07
GUEST_TESTPMD_FWD_MODE = ['csum']
+
+# map queue stats to separate regs to verify MQ functionality
+# setting this from testpmd command line prameters since DPDK 18.11 does not
+# work as expected so we have to set this inside testpmd i.e. to set rx queue
+# 2 on port 0 to mapping 5 add: "rx 0 2 5"
+# Please see DPDK documentation to get more information how to set stat_qmap
+# (https://doc.dpdk.org/guides/testpmd_app_ug/testpmd_funcs.html)
+GUEST_QUEUE_STATS_MAPPING = []
Expand VM option with given key for given number of VMs
"""
tmp_value = self.getValue(key)
+ # skip empty/not set value
+ if not tmp_value:
+ return
if isinstance(tmp_value, str):
scalar = True
master_value = tmp_value
"GUEST_SMP" : ['5'],
"GUEST_TESTPMD_PARAMS" : ['-c 0x1F -n 4 --socket-mem 512 -- '
'--burst=64 -i --nb-cores=4 '
- # map queue stats to separate regs to verify MQ functionality
- '--rx-queue-stats-mapping=\(0,0,0\),\(0,1,1\),\(1,0,2\),\(1,1,3\) '
- '--tx-queue-stats-mapping=\(0,0,4\),\(0,1,5\),\(1,0,6\),\(1,1,7\) '
'--rxq=2 --txq=2'],
"TRAFFICGEN_DURATION" : 5,
"TRAFFIC" : {
"traffic_type" : "rfc2544_continuous",
"multistream" : 3,
"stream_type" : "L3",
+ "frame_rate" : 1,
+ "learning_frames" : False,
'l3': {
'enabled': True,
'proto': 'udp',
'dstip': '1.1.1.1',
},
},
+ "GUEST_QUEUE_STATS_MAPPING" : ["rx 0 0 0",
+ "rx 0 1 1",
+ "rx 1 0 2",
+ "rx 1 1 3",
+ "tx 0 0 4",
+ "tx 0 1 5",
+ "tx 1 0 6",
+ "tx 1 1 7"
+ ]
},
"TestSteps": STEP_VSWITCH_PVP_FLOWS_INIT +
[
self.execute_and_wait('./testpmd {}'.format(testpmd_params), 60, "Done")
self.execute_and_wait('set fwd ' + self._testpmd_fwd_mode, 20, 'testpmd>')
+ for entry in S.getValue('GUEST_QUEUE_STATS_MAPPING'):
+ self.execute_and_wait('set stat_qmap ' + entry, 2, 'testpmd>')
self.execute_and_wait('start', 20, 'testpmd>')
def _configure_l2fwd(self):