A recent patch introduced a bug where SR-IOV would use code designed
for use with testpmd_pvp scenarios. This is because this scenario
also calls for the vswitch=none flag. This patch resolves this issue
to stop the vdev devices from being added when the vnf is specified
as QemuPciPassthrough.
JIRA: VSPERF-460
Change-Id: Ie4522b046982ec5554c3deb6a507d86ca9798124
Signed-off-by: Christian Trautman <ctrautma@redhat.com>
+from conf import settings
class PktFwdController(object):
"""Packet forwarder controller for P2P deployment scenario.
class PktFwdController(object):
"""Packet forwarder controller for P2P deployment scenario.
self._deployment = deployment
self._logger = logging.getLogger(__name__)
self._pktfwd_class = pktfwd_class
self._deployment = deployment
self._logger = logging.getLogger(__name__)
self._pktfwd_class = pktfwd_class
- self._pktfwd = pktfwd_class(guest=True if deployment == "pvp" else False)
+ self._pktfwd = pktfwd_class(guest=True if deployment == "pvp" and
+ settings.getValue('VNF') != "QemuPciPassthrough" else False)
self._logger.debug('Creation using ' + str(self._pktfwd_class))
def setup(self):
self._logger.debug('Creation using ' + str(self._pktfwd_class))
def setup(self):
def __enter__(self):
if self._deployment.find("p2p") == 0:
self.setup()
def __enter__(self):
if self._deployment.find("p2p") == 0:
self.setup()
- elif self._deployment == "pvp":
+ elif self._deployment == "pvp" and settings.getValue('VNF') != "QemuPciPassthrough":
self.setup_for_guest()
def __exit__(self, type_, value, traceback):
if self._deployment.find("p2p") == 0:
self.stop()
self.setup_for_guest()
def __exit__(self, type_, value, traceback):
if self._deployment.find("p2p") == 0:
self.stop()
- elif self._deployment == "pvp":
+ elif self._deployment == "pvp" and settings.getValue('VNF') != "QemuPciPassthrough":
self.stop()
def get_pktfwd(self):
self.stop()
def get_pktfwd(self):