Updates the documentation and feature lists for the AVP PMD device. Signed-off-by: Allain Legacy <allain.leg...@windriver.com> Signed-off-by: Matt Peters <matt.pet...@windriver.com> Acked-by: John McNamara <john.mcnam...@intel.com> --- MAINTAINERS | 1 + doc/guides/nics/avp.rst | 107 +++++++++++++++++++++++++++++++++ doc/guides/nics/index.rst | 1 + doc/guides/rel_notes/release_17_05.rst | 5 ++ 4 files changed, 114 insertions(+) create mode 100644 doc/guides/nics/avp.rst
diff --git a/MAINTAINERS b/MAINTAINERS index 4e9aa00..ec27449 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -420,6 +420,7 @@ Wind River AVP PMD M: Allain Legacy <allain.leg...@windriver.com> M: Matt Peters <matt.pet...@windriver.com> F: drivers/net/avp +F: doc/guides/nics/avp.rst Crypto Drivers diff --git a/doc/guides/nics/avp.rst b/doc/guides/nics/avp.rst new file mode 100644 index 0000000..c301f65 --- /dev/null +++ b/doc/guides/nics/avp.rst @@ -0,0 +1,107 @@ +.. BSD LICENSE + Copyright(c) 2017 Wind River Systems, Inc. rights reserved. + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + * Neither the name of Intel Corporation nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +AVP Poll Mode Driver +================================================================= + +The Accelerated Virtual Port (AVP) device is a shared memory based device +available on the `virtualization platforms <http://www.windriver.com/products/titanium-cloud/>`_ +from Wind River Systems. + +It enables optimized packet throughput without requiring any packet processing +in qemu. This provides our customers with a significant performance increase +for DPDK applications in the VM. Since our AVP implementation supports VM +live-migration it is viewed as a better alternative to PCI passthrough or PCI +SRIOV since neither of those support VM live-migration without manual +intervention or significant performance penalties. + +The driver binds to PCI devices that are exported by the hypervisor DPDK +application via a shared memory mechanism. It supports a subset of the full +Ethernet device API which enables the application to use the typical +configuration and packet transfer functions. + +The definition of the device structure and configuration options are defined in +rte_avp_common.h and rte_avp_fifo.h public header files. These two header +files are made available as part of the PMD implementation in order to share +the device definitions between the guest implementation (i.e., the PMD) and the +host implementation (i.e., the hypervisor DPDK vswitch application). + + +Features and Limitations of the AVP PMD +--------------------------------------- + +The AVP PMD driver provides the following functionality. + +* Receive and transmit of both simple and chained mbuf packets, + +* Chained mbufs may include up to 5 chained segments, + +* Up to 8 receive and transmit queues per device, + +* Only a single MAC address is supported, + +* The MAC address cannot be modified, + +* The maximum receive packet length is 9238 bytes, + +* VLAN header stripping and inserting, + +* Promiscuous mode + +* VM live-migration + +* PCI hotplug insertion and removal + + +Prerequisites +------------- + +The following prerequisites apply: + +* A virtual machine running in a Wind River Systems virtualization + environment and configured with at least one neutron port defined with a + vif-model set to "avp". + + +Launching a VM with an AVP type network attachment +-------------------------------------------------- + +The following example will launch a VM with three network attachments. The +first attachment will have a default vif-model of "virtio". The next two +network attachments will have a vif-model of "avp" and may be used with a DPDK +application which is built to include the AVP PMD driver. + +.. code-block:: console + + nova boot --flavor small --image my-image \ + --nic net-id=${NETWORK1_UUID} \ + --nic net-id=${NETWORK2_UUID},vif-model=avp \ + --nic net-id=${NETWORK3_UUID},vif-model=avp \ + --security-group default my-instance1 diff --git a/doc/guides/nics/index.rst b/doc/guides/nics/index.rst index 87f9334..0ddcea5 100644 --- a/doc/guides/nics/index.rst +++ b/doc/guides/nics/index.rst @@ -36,6 +36,7 @@ Network Interface Controller Drivers :numbered: overview + avp bnx2x bnxt cxgbe diff --git a/doc/guides/rel_notes/release_17_05.rst b/doc/guides/rel_notes/release_17_05.rst index 918f483..5b0855c 100644 --- a/doc/guides/rel_notes/release_17_05.rst +++ b/doc/guides/rel_notes/release_17_05.rst @@ -49,6 +49,11 @@ New Features sPAPR IOMMU based pci probing enabled for vfio-pci devices. +* **Added support for the Wind River Systems AVP PMD.** + + Added a new networking driver for the AVP device type. Theses devices are + specific to the Wind River Systems virtualization platforms. + Resolved Issues --------------- -- 1.8.3.1