Skip to content

Commit

Permalink
dpdk: Deprecate vhost-user server ports.
Browse files Browse the repository at this point in the history
Since vhost-user server mode ports are the preferred mechanism for
interconnecting Open vSwitch with VMs when using DPDK, and since there
are currently no known use cases for vhost-user server mode ports apart
from version incompatibilities with QEMU, announce that server mode ports
are considered deprecated and will be removed in a future release.

Cc: Ciara Loftus <[email protected]>
Cc: Kevin Traynor <[email protected]>
Suggested-by: Darrell Ball <[email protected]>
Signed-off-by: Aaron Conole <[email protected]>
Signed-off-by: Ben Pfaff <[email protected]>
Acked-by: Darrell Ball <[email protected]>
Signed-off-by: Ben Pfaff <[email protected]>
  • Loading branch information
apconole authored and blp committed Jun 8, 2017
1 parent cc3a32f commit 28ca969
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 8 deletions.
26 changes: 18 additions & 8 deletions Documentation/topics/dpdk/vhost-user.rst
Original file line number Diff line number Diff line change
Expand Up @@ -32,13 +32,20 @@ documentation`_ on same.
Quick Example
-------------

This example demonstrates how to add two ``dpdkvhostuser`` ports to an existing
bridge called ``br0``::
This example demonstrates how to add two ``dpdkvhostuserclient`` ports to an
existing bridge called ``br0``::

$ ovs-vsctl add-port br0 dpdkvhostuser0 \
-- set Interface dpdkvhostuser0 type=dpdkvhostuser
$ ovs-vsctl add-port br0 dpdkvhostuser1 \
-- set Interface dpdkvhostuser1 type=dpdkvhostuser
$ ovs-vsctl add-port br0 dpdkvhostclient0 \
-- set Interface dpdkvhostclient0 type=dpdkvhostuserclient \
options:vhost-server-path=/tmp/dpdkvhostclient0
$ ovs-vsctl add-port br0 dpdkvhostclient1 \
-- set Interface dpdkvhostclient1 type=dpdkvhostuserclient \
options:vhost-server-path=/tmp/dpdkvhostclient1

For the above examples to work, an appropriate server socket must be created
at the paths specified (``/tmp/dpdkvhostclient0`` and
``/tmp/dpdkvhostclient0``). These sockets can be created with QEMU; see the
:ref:`vhost-user client <dpdk-vhost-user-client>` section for details.

vhost-user vs. vhost-user-client
--------------------------------
Expand All @@ -59,7 +66,9 @@ means if OVS dies, all VMs **must** be restarted. On the other hand, for
vhost-user-client ports, OVS acts as the client and QEMU the server. This means
OVS can die and be restarted without issue, and it is also possible to restart
an instance itself. For this reason, vhost-user-client ports are the preferred
type for most use cases.
type for all known use cases; the only limitation is that vhost-user client
mode ports require QEMU version 2.7. Ports of type vhost-user are currently
deprecated and will be removed in a future release.

.. _dpdk-vhost-user:

Expand All @@ -68,7 +77,8 @@ vhost-user

.. important::

Use of vhost-user ports requires QEMU >= 2.2
Use of vhost-user ports requires QEMU >= 2.2; vhost-user ports are
*deprecated*.

To use vhost-user ports, you must first add said ports to the switch. DPDK
vhost-user ports can have arbitrary names with the exception of forward and
Expand Down
2 changes: 2 additions & 0 deletions NEWS
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@ Post-v2.7.0
Log level can be changed in a usual OVS way using
'ovs-appctl vlog' commands for 'dpdk' module. Lower bound
still can be configured via extra arguments for DPDK EAL.
* dpdkvhostuser ports are marked as deprecated. They will be removed
in an upcoming release.
- IPFIX now provides additional counters:
* Total counters since metering process startup.
* Per-flow TCP flag counters.
Expand Down
2 changes: 2 additions & 0 deletions lib/netdev-dpdk.c
Original file line number Diff line number Diff line change
Expand Up @@ -966,6 +966,8 @@ netdev_dpdk_vhost_construct(struct netdev *netdev)
err = vhost_common_construct(netdev);

ovs_mutex_unlock(&dpdk_mutex);
VLOG_WARN_ONCE("dpdkvhostuser ports are considered deprecated; "
"please migrate to dpdkvhostuserclient ports.");
return err;
}

Expand Down

0 comments on commit 28ca969

Please sign in to comment.