CSIT-1389 Refactor current keywords for multichaining - CNF
[csit.git] / resources / libraries / python / DpdkUtil.py
index 79e7209..41c79a8 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (c) 2016 Cisco and/or its affiliates.
+# Copyright (c) 2018 Cisco and/or its affiliates.
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 # You may obtain a copy of the License at:
@@ -29,8 +29,8 @@ class DpdkUtil(object):
         :rtype: str
         """
         # Set the hexadecimal bitmask of the cores to run on.
-        eal_coremask = '-c {} '.format(args['eal_coremask'])\
-            if args.get('eal_coremask', '') else ''
+        eal_corelist = '-l {} '.format(args['eal_corelist'])\
+            if args.get('eal_corelist', '') else ''
         # Set master core.
         eal_master_core = '--master-lcore 0 '
         # Set the number of memory channels to use.
@@ -42,7 +42,7 @@ class DpdkUtil(object):
         # Load an external driver. Multiple -d options are allowed.
         eal_driver = '-d /usr/lib/librte_pmd_virtio.so '
         eal_options = '-v '\
-            + eal_coremask\
+            + eal_corelist\
             + eal_master_core\
             + eal_mem_channels\
             + eal_socket_mem\
@@ -79,8 +79,11 @@ class DpdkUtil(object):
         # Set the hexadecimal bitmask of TX queue flags.
         pmd_txqflags = '--txqflags=0xf00 '
         # Set the number of mbufs to be allocated in the mbuf pools.
-        pmd_total_num_mbufs = '--total-num-mbufs={} '.format(\
+        pmd_total_num_mbufs = '--total-num-mbufs={} '.format(
             args['pmd_num_mbufs']) if args.get('pmd_num_mbufs', '') else ''
+        # Set the max packet length.
+        pmd_max_pkt_len = "--max-pkt-len={0}".format(args["pmd_max_pkt_len"]) \
+            if args.get("pmd_max_pkt_len", "") else ""
         # Set the hexadecimal bitmask of the ports for forwarding.
         pmd_portmask = '--portmask={} '.format(args['pmd_portmask'])\
             if args.get('pmd_portmask', '') else ''
@@ -96,7 +99,7 @@ class DpdkUtil(object):
         pmd_eth_peer_1 = '--eth-peer={} '.format(args['pmd_eth_peer_1'])\
             if args.get('pmd_eth_peer_1', '') else ''
         # Set the number of forwarding cores based on coremask.
-        pmd_nb_cores = '--nb-cores={} '.format(\
+        pmd_nb_cores = '--nb-cores={} '.format(
             bin(int(args['eal_coremask'], 0)).count('1')-1)\
             if args.get('eal_coremask', '') else ''
         pmd_options = '-- '\
@@ -113,21 +116,22 @@ class DpdkUtil(object):
             + pmd_disable_rss\
             + pmd_eth_peer_0\
             + pmd_eth_peer_1\
-            + pmd_nb_cores
+            + pmd_nb_cores\
+            + pmd_max_pkt_len
         return pmd_options
 
     @staticmethod
-    def dpdk_testpmd_start(node, **args):
+    def dpdk_testpmd_start(node, **kwargs):
         """Start DPDK testpmd app on VM node.
 
         :param node: VM Node to start testpmd on.
-        :param args: List of testpmd parameters.
+        :param args: Key-value testpmd parameters.
         :type node: dict
         :type args: dict
-        :return: nothing
+        :returns: nothing
         """
-        eal_options = DpdkUtil.get_eal_options(**args)
-        pmd_options = DpdkUtil.get_pmd_options(**args)
+        eal_options = DpdkUtil.get_eal_options(**kwargs)
+        pmd_options = DpdkUtil.get_pmd_options(**kwargs)
 
         ssh = SSH()
         ssh.connect(node)
@@ -141,7 +145,7 @@ class DpdkUtil(object):
 
         :param node: Node to stop testpmd on.
         :type node: dict
-        :return: nothing
+        :returns: nothing
         """
         ssh = SSH()
         ssh.connect(node)