diff options
Diffstat (limited to 'vswitches/vpp_dpdk_vhost.py')
-rw-r--r-- | vswitches/vpp_dpdk_vhost.py | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/vswitches/vpp_dpdk_vhost.py b/vswitches/vpp_dpdk_vhost.py index 5dfc314d..f88ed95e 100644 --- a/vswitches/vpp_dpdk_vhost.py +++ b/vswitches/vpp_dpdk_vhost.py @@ -104,12 +104,20 @@ class VppDpdkVhost(IVSwitch, tasks.Process): tmpif = iface.split() if not tmpif: continue + if 'Link' in iface or 'local' in iface: + continue # get PCI address of given interface output = self.run_vppctl(['show', 'hardware', tmpif[1], 'detail']) - match = re.search(r'pci address:\s*([\d:\.]+)', output[0]) + lines = output[0].split('\n') + #match = re.search(r'pci address:\s*([\d:\.]+)', output[0]) + match = '' + for line in lines: + if "pci:" in line: + match = line.split(' ')[6] if match: # normalize PCI address, e.g. 0000:05:10.01 => 0000:05:10.1 - tmp_pci = match.group(1).split('.') + tmp_pci = match.split('.') + # tmp_pci = match.group(1).split('.') tmp_pci[1] = str(int(tmp_pci[1])) tmpif.append('.'.join(tmp_pci)) else: @@ -454,4 +462,4 @@ class VppDpdkVhost(IVSwitch, tasks.Process): def get_ports(self, switch_name): """See IVswitch for general description """ - raise NotImplementedError() + return self._phy_ports |