On 04/21/2015 12:50 AM, Pravin Shelar wrote:
On Wed, Apr 15, 2015 at 12:03 AM, Panu Matilainen <pmati...@redhat.com> wrote:
On 04/14/2015 11:31 PM, Pravin Shelar wrote:

On Thu, Mar 19, 2015 at 11:48 AM, Ciara Loftus <ciara.lof...@intel.com>
wrote:

This patch adds support for a new port type to the userspace datapath
called dpdkvhostuser. It adds to the existing infrastructure of
vhost-cuse, however disables vhost-cuse ports in favour of vhost-user
ports.

A new dpdkvhostuser port will create a unix domain socket which when
provided to QEMU is used to facilitate communication between the
virtio-net device on the VM and the OVS port.

Signed-off-by: Ciara Loftus <ciara.lof...@intel.com>
---
   INSTALL.DPDK.md         | 115
++++++++++++++++++++++++++++++++++++------------

...
...


diff --git a/acinclude.m4 b/acinclude.m4
index 18598b3..2113dfb 100644
--- a/acinclude.m4
+++ b/acinclude.m4
@@ -224,6 +224,19 @@ AC_DEFUN([OVS_CHECK_DPDK], [
     AM_CONDITIONAL([DPDK_NETDEV], test -n "$RTE_SDK")
   ])

+dnl OVS_CHECK_VHOST_CUSE
+dnl
+dnl Enable DPDK vhost-cuse support in favour of vhost-user
+AC_DEFUN([OVS_CHECK_VHOST_CUSE], [
+  AC_ARG_WITH(vhostcuse,
+              [AC_HELP_STRING([--with-vhostcuse],
+                              [Enable DPDK vhost-cuse])])
+
+  if test X"$with_vhostcuse" != X; then
+    AC_DEFINE([VHOST_CUSE], [1], [DPDK vhost-cuse support enabled,
vhost-user disabled.])
+  fi
+])
+
   dnl OVS_GREP_IFELSE(FILE, REGEX, [IF-MATCH], [IF-NO-MATCH])
   dnl
   dnl Greps FILE for REGEX.  If it matches, runs IF-MATCH, otherwise
IF-NO-MATCH.
diff --git a/configure.ac b/configure.ac
index 8d47eb9..14c4b35 100644


We need to compile-in support for both - vhost-cuse and vhost-user and
use it according to port configuration. This way we can keep single
executable for all use cases.


The problem is that this is a compile-time option in DPDK, librte_vhost only
supports one or the other depending on how DPDK was built.

The API looks the same in both cases, but behaves differently in that that
rte_vhost_driver_register() expects an absolute path for vhost-user and a
relative one (under /dev) for vhost-cuse.


ok.
If you detect vhost implementation build in DPDK library at configure
time there is no need for another OVS configure option.

The DPDK configuration is available in rte_config.h so one can just include that to see whether vhost support is enabled in DPDK at all + whether its using vhost-user or -cuse.

        - Panu -
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to