summaryrefslogtreecommitdiffstats
path: root/scripts/dpdk_setup_ports.py
diff options
context:
space:
mode:
authorYaroslav Brustinov <ybrustin@cisco.com>2016-12-14 01:19:31 +0200
committerYaroslav Brustinov <ybrustin@cisco.com>2016-12-20 12:08:30 +0200
commit1530b34cabea906fef56f1537cd32aead6103f9d (patch)
treed00746b88c91e68743860a833eb723239a2f8d2c /scripts/dpdk_setup_ports.py
parentde2af4eb20e9f77adfb1ee61e6ae3c82bfb86e92 (diff)
scapy launcher
Change-Id: Iafe0365e82c5386e87dbf7abd0f0982c3ff95d80 Signed-off-by: Yaroslav Brustinov <ybrustin@cisco.com>
Diffstat (limited to 'scripts/dpdk_setup_ports.py')
-rwxr-xr-xscripts/dpdk_setup_ports.py36
1 files changed, 21 insertions, 15 deletions
diff --git a/scripts/dpdk_setup_ports.py b/scripts/dpdk_setup_ports.py
index 59b113ba..fce099b5 100755
--- a/scripts/dpdk_setup_ports.py
+++ b/scripts/dpdk_setup_ports.py
@@ -242,9 +242,7 @@ class ConfigCreator(object):
class map_driver(object):
args=None;
cfg_file='/etc/trex_cfg.yaml'
- parent_cfg = None
- dump_interfaces = None
- no_ofed_check = None
+ parent_args = None
class DpdkSetup(Exception):
pass
@@ -409,7 +407,7 @@ Other network devices
self.raise_error ("Configuration file %s is old, should include version field\n" % fcfg )
if int(cfg_dict['version'])<2 :
- self.raise_error ("Configuration file %s is old, should include version field with value greater than 2\n" % fcfg)
+ self.raise_error ("Configuration file %s is old, expected version 2, got: %s\n" % (fcfg, cfg_dict['version']))
if 'interfaces' not in self.m_cfg_dict[0]:
self.raise_error ("Configuration file %s is old, should include interfaces field even number of elemets" % fcfg)
@@ -461,11 +459,13 @@ Other network devices
def do_run (self,only_check_all_mlx=False):
self.run_dpdk_lspci ()
- if map_driver.dump_interfaces is None or (map_driver.dump_interfaces == [] and map_driver.parent_cfg):
+ if (map_driver.parent_args.dump_interfaces is None or
+ (map_driver.parent_args.dump_interfaces == [] and
+ map_driver.parent_args.cfg)):
self.load_config_file()
if_list=self.m_cfg_dict[0]['interfaces']
else:
- if_list = map_driver.dump_interfaces
+ if_list = map_driver.parent_args.dump_interfaces
if not if_list:
for dev in self.m_devices.values():
if dev.get('Driver_str') in dpdk_nic_bind.dpdk_drivers:
@@ -489,18 +489,18 @@ Other network devices
Mellanox_cnt=Mellanox_cnt+1
- if not map_driver.dump_interfaces :
+ if not map_driver.parent_args.dump_interfaces:
if ((Mellanox_cnt>0) and (Mellanox_cnt!= len(if_list))):
err=" All driver should be from one vendor. you have at least one driver from Mellanox but not all ";
raise DpdkSetup(err)
- if not map_driver.dump_interfaces :
+ if not map_driver.parent_args.dump_interfaces:
if Mellanox_cnt>0 :
self.set_only_mellanox_nics()
if self.get_only_mellanox_nics():
- if not map_driver.no_ofed_check:
+ if not map_driver.parent_args.no_ofed_check:
self.verify_ofed_os()
self.check_ofed_version()
@@ -543,6 +543,11 @@ Other network devices
sys.exit(1)
else:
print('WARNING: Some other program is using DPDK driver.\nIf it is TRex and you did not configure it for dual run, current command will fail.')
+ if map_driver.parent_args.stl:
+ ret = os.system('%s scapy_daemon_server restart' % sys.executable)
+ if ret:
+ sys.exit(1)
+
def do_return_to_linux(self):
if not self.m_devices:
@@ -850,10 +855,11 @@ def parse_parent_cfg (parent_cfg):
parent_parser.add_argument('--dump-interfaces', nargs='*', default=None)
parent_parser.add_argument('--no-ofed-check', action = 'store_true')
parent_parser.add_argument('--no-watchdog', action = 'store_true')
- args, _ = parent_parser.parse_known_args(shlex.split(parent_cfg))
- if args.help:
+ parent_parser.add_argument('-i', action = 'store_true', dest = 'stl', default = False)
+ map_driver.parent_args, _ = parent_parser.parse_known_args(shlex.split(parent_cfg))
+ if map_driver.parent_args.help:
sys.exit(0)
- return (args.cfg, args.dump_interfaces, args.no_ofed_check)
+
def process_options ():
parser = argparse.ArgumentParser(usage="""
@@ -970,9 +976,9 @@ To see more detailed info on interfaces (table):
map_driver.args = parser.parse_args();
if map_driver.args.parent :
- map_driver.parent_cfg, map_driver.dump_interfaces, map_driver.no_ofed_check = parse_parent_cfg (map_driver.args.parent)
- if map_driver.parent_cfg != '':
- map_driver.cfg_file = map_driver.parent_cfg;
+ parse_parent_cfg (map_driver.args.parent)
+ if map_driver.parent_args.cfg:
+ map_driver.cfg_file = map_driver.parent_args.cfg;
if map_driver.args.cfg :
map_driver.cfg_file = map_driver.args.cfg;