[ovs-dev] [PATCH v2 4/9] doc: Add "vdev" topic document

Stokes, Ian ian.stokes at intel.com
Wed Apr 18 15:32:06 UTC 2018


> These are separate things from physical, ring and vhost-user interfaces
> and deserve their own documents. A couple of small typos are fixed along
> the way.
> 
> Signed-off-by: Stephen Finucane <stephen at that.guru>
> ---
>  Documentation/howto/dpdk.rst        | 29 ------------------
>  Documentation/topics/dpdk/index.rst |  1 +
> Documentation/topics/dpdk/vdev.rst  | 59
> +++++++++++++++++++++++++++++++++++++
>  3 files changed, 60 insertions(+), 29 deletions(-)  create mode 100644
> Documentation/topics/dpdk/vdev.rst
> 
> diff --git a/Documentation/howto/dpdk.rst b/Documentation/howto/dpdk.rst
> index 531612880..9cb76b7e1 100644
> --- a/Documentation/howto/dpdk.rst
> +++ b/Documentation/howto/dpdk.rst
> @@ -244,35 +244,6 @@ Note about "Extended Statistics": vHost ports
> supports only partial  statistics. RX packet size based counter are only
> supported and  doesn't include TX packet size counters.
> 
> -.. _vdev-support:
> -
> -Vdev Support
> -------------
> -
> -DPDK provides drivers for both physical and virtual devices. Physical
> DPDK -devices are added to OVS by specifying a valid PCI address in 'dpdk-
> devargs'.
> -Virtual DPDK devices which do not have PCI addresses can be added using a
> -different format for 'dpdk-devargs'.
> -
> -Typically, the format expected is 'eth_<driver_name><x>' where 'x' is a -
> unique identifier of your choice for the given port.
> -
> -For example to add a dpdk port that uses the 'null' DPDK PMD driver::
> -
> -       $ ovs-vsctl add-port br0 null0 -- set Interface null0 type=dpdk \
> -           options:dpdk-devargs=eth_null0
> -
> -Similarly, to add a dpdk port that uses the 'af_packet' DPDK PMD driver::
> -
> -       $ ovs-vsctl add-port br0 myeth0 -- set Interface myeth0 type=dpdk
> \
> -           options:dpdk-devargs=eth_af_packet0,iface=eth0
> -
> -More information on the different types of virtual DPDK PMDs can be found
> in -the `DPDK documentation -
> <http://dpdk.org/doc/guides/nics/overview.html>`__.
> -
> -Note: Not all DPDK virtual PMD drivers have been tested and verified to
> work.
> -
>  EMC Insertion Probability
>  -------------------------
>  By default 1 in every 100 flows are inserted into the Exact Match Cache
> (EMC).
> diff --git a/Documentation/topics/dpdk/index.rst
> b/Documentation/topics/dpdk/index.rst
> index 4b4dc119a..c1e6ea78c 100644
> --- a/Documentation/topics/dpdk/index.rst
> +++ b/Documentation/topics/dpdk/index.rst
> @@ -34,4 +34,5 @@ The DPDK Datapath
>     /topics/dpdk/phy
>     /topics/dpdk/vhost-user
>     /topics/dpdk/ring
> +   /topics/dpdk/vdev
>     /topics/dpdk/pmd
> diff --git a/Documentation/topics/dpdk/vdev.rst
> b/Documentation/topics/dpdk/vdev.rst

Compilation error, vdev.rst not listed in Documentation/automake.mk

> new file mode 100644
> index 000000000..1b00ac573
> --- /dev/null
> +++ b/Documentation/topics/dpdk/vdev.rst
> @@ -0,0 +1,59 @@
> +..
> +      Copyright 2018, Red Hat, Inc.
> +
> +      Licensed under the Apache License, Version 2.0 (the "License"); you
> may
> +      not use this file except in compliance with the License. You may
> obtain
> +      a copy of the License at
> +
> +          http://www.apache.org/licenses/LICENSE-2.0
> +
> +      Unless required by applicable law or agreed to in writing, software
> +      distributed under the License is distributed on an "AS IS" BASIS,
> WITHOUT
> +      WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
> See the
> +      License for the specific language governing permissions and
> limitations
> +      under the License.
> +
> +      Convention for heading levels in Open vSwitch documentation:
> +
> +      =======  Heading 0 (reserved for the title in a document)
> +      -------  Heading 1
> +      ~~~~~~~  Heading 2
> +      +++++++  Heading 3
> +      '''''''  Heading 4
> +
> +      Avoid deeper levels because they do not render well.
> +
> +====================
> +DPDK Virtual Devices
> +====================
> +

Support for vdevs was added as part of OVS 2.7, version change tag here to flag it wasn't there for 2.6 would be good.

> +DPDK provides drivers for both physical and virtual devices. Physical
> +DPDK devices are added to OVS by specifying a valid PCI address in
> ``dpdk-devargs``.
> +Virtual DPDK devices which do not have PCI addresses can be added using
> +a different format for ``dpdk-devargs``.
> +
> +.. note::
> +
> +    Not all DPDK virtual PMD drivers have been tested and verified to
> work.
> +

Similar to vhost and phy devices I'd add a cross reference to the bridge document here after it's added.

> +Quick Example
> +-------------
> +
> +To add a virtual ``dpdk`` devices, the ``dpdk-devargs`` argument should
> +be of the format ``eth_<driver_name><x>``, where ``x``' is a unique
> +identifier of your choice for the given port. For example to add a
> +``dpdk`` port that uses the ``null`` DPDK PMD driver, run::
> +
> +   $ ovs-vsctl add-port br0 null0 -- set Interface null0 type=dpdk \
> +       options:dpdk-devargs=eth_null0
> +
> +Similarly, to add a ``dpdk`` port that uses the ``af_packet`` DPDK PMD
> +driver,
> +run::
> +
> +   $ ovs-vsctl add-port br0 myeth0 -- set Interface myeth0 type=dpdk \
> +       options:dpdk-devargs=eth_af_packet0,iface=eth0
> +
> +More information on the different types of virtual DPDK PMDs can be
> +found in the `DPDK documentation`__.
> +
> +__ http://dpdk.org/doc/guides/nics/overview.html
> --
> 2.14.3



More information about the dev mailing list