13b142ff8b
As part of the ongoing development of the sriov-cni and sriov-device-plugin, the DPDK NetworkAttachmentDefinition configuration options have been deprecated. Previously, we used this functionality to have the sriov-cni plugin perform the device bind from netdevice (kernel) to vfio (userspace), and simply set sriov-device-plugin deviceType configuration parameter to 'netdevice'. Going forward, we must add a mechanism for a user to define the deviceType at the interface configuration level. This means an SR-IOV enabled device can no longer have a mix of netdevice, vfio chosen by the NeworkAttachmentDefinition. That is, it must be determined by the user beforehand which type of virtual function driver (kernel or DPDK) a device's VFs should have. This commit includes the cgtsclient, API, DB and puppet related changes required for a user to set the VF driver type. In terms of the cgts-client, the following parameter has been added: --vf-driver. Example usage for a device intended to be used with a DPDK application is as follows: system host-if-modify -m 1500 -n sriov0 -d ${DATANET} \ -c pci-sriov -N ${NUM_VFS} --vf-driver=vfio ${WORKER_NAME} \ ${INTERFACE_UUID} If the user does not specify a vf-driver, the default device type will remain as it is today as 'netdevice'. The user can also choose to explicitly set the --vf-driver to 'netdevice' for the same effect. In this case, a check is made to ensure the VF driver has been detected and reported by the sysinv agent. Story: 2005208 Task: 33485 Closes-Bug: 1829565 Change-Id: I8f6f27b79c7fafa03873e71473f7694991142e50 Signed-off-by: Steven Webster <steven.webster@windriver.com> |
||
---|---|---|
.. | ||
.eggs | ||
contrib | ||
doc/source | ||
etc/sysinv | ||
scripts | ||
sysinv | ||
tools | ||
.coveragerc | ||
.gitignore | ||
.stestr.conf | ||
CONTRIBUTING.rst | ||
LICENSE | ||
MANIFEST.in | ||
README.rst | ||
babel.cfg | ||
openstack-common.conf | ||
pylint.rc | ||
requirements.txt | ||
setup.cfg | ||
setup.py | ||
test-requirements.txt | ||
tox.ini |
README.rst
Placeholder to allow setup.py to work. Removing this requires modifying the setup.py manifest.