X-Git-Url: https://gerrit.fd.io/r/gitweb?p=csit.git;a=blobdiff_plain;f=resources%2Flibraries%2Fpython%2FInterfaceUtil.py;h=4cd7cf10b69b0d925c2030ed5e9daa982d6fb43d;hp=6703e6a91038900829e9d75b016374a8e709fd86;hb=7d849ba64e10b8a7678845ee1dcc091e125dd124;hpb=9e86d195050fcd75c20d59f78d6f5a5e379a6a86 diff --git a/resources/libraries/python/InterfaceUtil.py b/resources/libraries/python/InterfaceUtil.py index 6703e6a910..4cd7cf10b6 100644 --- a/resources/libraries/python/InterfaceUtil.py +++ b/resources/libraries/python/InterfaceUtil.py @@ -1791,6 +1791,10 @@ class InterfaceUtil: vf_keys = InterfaceUtil.init_generic_interface( node, ifc_key, numvfs=numvfs, osi_layer=osi_layer ) + elif driver == u"rdma-core": + vf_keys = InterfaceUtil.init_generic_interface( + node, ifc_key, numvfs=numvfs, osi_layer=osi_layer + ) return vf_keys @staticmethod @@ -1824,8 +1828,9 @@ class InterfaceUtil: # PCI device must be re-bound to kernel driver before creating VFs. DUTSetup.verify_kernel_module(node, kernel_driver, force_load=True) # Stop VPP to prevent deadlock. - # Unbind from current driver. - DUTSetup.pci_driver_unbind(node, pf_pci_addr) + # Unbind from current driver if bound. + if current_driver: + DUTSetup.pci_driver_unbind(node, pf_pci_addr) # Bind to kernel driver. DUTSetup.pci_driver_bind(node, pf_pci_addr, kernel_driver)