Since DPDK 1.7, VFIO is supported in place of UIO. This allows
a user to avoid having to insert a non-standard kernel module.

This patch updates the documentation with instructions for
setting up OVS with VFIO. As part of this work, VFIO was also
successfully tested with OVS and the DPDK netdev.

Signed-off-by: Mark D. Gray <mark.d.g...@intel.com>
---
 INSTALL.DPDK.md |   17 +++++++++++++++++
 1 files changed, 17 insertions(+), 0 deletions(-)

diff --git a/INSTALL.DPDK.md b/INSTALL.DPDK.md
index c105c4b..e9a4b5b 100644
--- a/INSTALL.DPDK.md
+++ b/INSTALL.DPDK.md
@@ -81,10 +81,26 @@ Using the DPDK with ovs-vswitchd:
    `default_hugepagesz=1GB hugepagesz=1G hugepages=1`
 
 2. Setup DPDK devices:
+
+   DPDK devices can be setup using either the VFIO (for DPDK 1.7+) or UIO
+   modules. UIO requires inserting an out of tree driver igb_uio.ko that is
+   available in DPDK. Setup for both methods are described below.
+
+   UIO:
    1. insert uio.ko: `modprobe uio`
    2. insert igb_uio.ko: `insmod $DPDK_BUILD/kmod/igb_uio.ko`
    3. Bind network device to igb_uio: `$DPDK_DIR/tools/dpdk_nic_bind.py 
--bind=igb_uio eth1`
 
+   VFIO:
+
+   VFIO needs to be supported in the kernel and the BIOS. More information
+   can be found in the [DPDK Linux GSG].
+
+   1. Insert vfio-pci.ko: `modprobe vfio-pci`
+   2. Set correct permissions on vfio device: `sudo /usr/bin/chmod a+x 
/dev/vfio`
+      and: `sudo /usr/bin/chmod 0666 /dev/vfio/*`
+   3. Bind network device to vfio-pci: `$DPDK_DIR/tools/dpdk_nic_bind.py 
--bind=vfio-pci eth1`
+
 3. Mount the hugetable filsystem
 
    `mount -t hugetlbfs -o pagesize=1G none /dev/hugepages`
@@ -292,3 +308,4 @@ Please report problems to b...@openvswitch.org.
 
 [INSTALL.userspace.md]:INSTALL.userspace.md
 [INSTALL.md]:INSTALL.md
+[DPDK Linux GSG]: 
http://www.dpdk.org/doc/guides/linux_gsg/build_dpdk.html#binding-and-unbinding-network-ports-to-from-the-igb-uioor-vfio-modules
-- 
1.7.4.1

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

Reply via email to