[ovs-dev] [PATCH v2] netdev-dpdk: Add support for DPDK 16.11
Ciara Loftus
ciara.loftus at intel.com
Fri Nov 25 10:41:11 UTC 2016
This commit announces support for DPDK 16.11. Compaitibilty with DPDK
v16.07 is not broken yet thanks to only minor code changes being needed
for the upgrade.
Signed-off-by: Ciara Loftus <ciara.loftus at intel.com>
---
v2:
* Fix broken link to release notes.
.travis/linux-build.sh | 2 +-
INSTALL.DPDK-ADVANCED.rst | 4 ++--
INSTALL.DPDK.rst | 18 +++++++++---------
NEWS | 1 +
lib/netdev-dpdk.c | 3 ++-
5 files changed, 15 insertions(+), 13 deletions(-)
diff --git a/.travis/linux-build.sh b/.travis/linux-build.sh
index 3bcec93..6fe663c 100755
--- a/.travis/linux-build.sh
+++ b/.travis/linux-build.sh
@@ -80,7 +80,7 @@ fi
if [ "$DPDK" ]; then
if [ -z "$DPDK_VER" ]; then
- DPDK_VER="16.07"
+ DPDK_VER="16.11"
fi
install_dpdk $DPDK_VER
if [ "$CC" = "clang" ]; then
diff --git a/INSTALL.DPDK-ADVANCED.rst b/INSTALL.DPDK-ADVANCED.rst
index 7ecbc59..9b2895b 100644
--- a/INSTALL.DPDK-ADVANCED.rst
+++ b/INSTALL.DPDK-ADVANCED.rst
@@ -393,7 +393,7 @@ bridge ``br0``. Once complete, follow the below steps:
$ cd /usr/src/cmdline_generator
$ wget https://raw.githubusercontent.com/netgroup-polito/un-orchestrator/master/orchestrator/compute_controller/plugins/kvm-libvirt/cmdline_generator/cmdline_generator.c
$ wget https://raw.githubusercontent.com/netgroup-polito/un-orchestrator/master/orchestrator/compute_controller/plugins/kvm-libvirt/cmdline_generator/Makefile
- $ export RTE_SDK=/usr/src/dpdk-16.07
+ $ export RTE_SDK=/usr/src/dpdk-16.11
$ export RTE_TARGET=x86_64-ivshmem-linuxapp-gcc
$ make
$ ./build/cmdline_generator -m -p dpdkr0 XXX
@@ -414,7 +414,7 @@ bridge ``br0``. Once complete, follow the below steps:
$ mount -t hugetlbfs nodev /dev/hugepages (if not already mounted)
# Build the DPDK ring application in the VM
- $ export RTE_SDK=/root/dpdk-16.07
+ $ export RTE_SDK=/root/dpdk-16.11
$ export RTE_TARGET=x86_64-ivshmem-linuxapp-gcc
$ make
diff --git a/INSTALL.DPDK.rst b/INSTALL.DPDK.rst
index 55ee1ba..a078093 100644
--- a/INSTALL.DPDK.rst
+++ b/INSTALL.DPDK.rst
@@ -38,7 +38,7 @@ Build requirements
In addition to the requirements described in the `installation guide
<INSTALL.rst>`__, building Open vSwitch with DPDK will require the following:
-- DPDK 16.07
+- DPDK 16.11
- A `DPDK supported NIC`_
@@ -69,9 +69,9 @@ DPDK
1. Download the `DPDK sources`_, extract the file and set ``DPDK_DIR``::
$ cd /usr/src/
- $ wget http://dpdk.org/browse/dpdk/snapshot/dpdk-16.07.zip
- $ unzip dpdk-16.07.zip
- $ export DPDK_DIR=/usr/src/dpdk-16.07
+ $ wget http://dpdk.org/browse/dpdk/snapshot/dpdk-16.11.zip
+ $ unzip dpdk-16.11.zip
+ $ export DPDK_DIR=/usr/src/dpdk-16.11
$ cd $DPDK_DIR
2. Configure and install DPDK
@@ -363,9 +363,9 @@ To being, instantiate the guest::
Download the DPDK sourcs to VM and build DPDK::
$ cd /root/dpdk/
- $ wget http://dpdk.org/browse/dpdk/snapshot/dpdk-16.07.zip
- $ unzip dpdk-16.07.zip
- $ export DPDK_DIR=/root/dpdk/dpdk-16.07
+ $ wget http://dpdk.org/browse/dpdk/snapshot/dpdk-16.11.zip
+ $ unzip dpdk-16.11.zip
+ $ export DPDK_DIR=/root/dpdk/dpdk-16.11
$ export DPDK_TARGET=x86_64-native-linuxapp-gcc
$ export DPDK_BUILD=$DPDK_DIR/$DPDK_TARGET
$ cd $DPDK_DIR
@@ -521,7 +521,7 @@ configuration for a 'demovm' guest that can be instantiated using `virsh`::
</disk>
<disk type='dir' device='disk'>
<driver name='qemu' type='fat'/>
- <source dir='/usr/src/dpdk-16.07'/>
+ <source dir='/usr/src/dpdk-16.11'/>
<target dev='vdb' bus='virtio'/>
<readonly/>
</disk>
@@ -596,7 +596,7 @@ Limitations
The latest list of validated firmware versions can be found in the `DPDK
release notes`_.
-.. _DPDK release notes: http://dpdk.org/doc/guides/rel_notes/release_16.07.html
+.. _DPDK release notes: http://dpdk.org/doc/guides/rel_notes/release_16_11.html
Bug Reporting
-------------
diff --git a/NEWS b/NEWS
index a4806d3..22beeb2 100644
--- a/NEWS
+++ b/NEWS
@@ -38,6 +38,7 @@ Post-v2.6.0
- DPDK:
* New option 'n_rxq_desc' and 'n_txq_desc' fields for DPDK interfaces
which set the number of rx and tx descriptors to use for the given port.
+ * Support for DPDK v16.11.
- Fedora packaging:
* A package upgrade does not automatically restart OVS service.
- ovs-vswitchd/ovs-vsctl:
diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c
index de78ddd..7564ad7 100644
--- a/lib/netdev-dpdk.c
+++ b/lib/netdev-dpdk.c
@@ -2593,7 +2593,8 @@ netdev_dpdk_vhost_class_init(void)
rte_vhost_driver_callback_register(&virtio_net_device_ops);
rte_vhost_feature_disable(1ULL << VIRTIO_NET_F_HOST_TSO4
| 1ULL << VIRTIO_NET_F_HOST_TSO6
- | 1ULL << VIRTIO_NET_F_CSUM);
+ | 1ULL << VIRTIO_NET_F_CSUM
+ | 1ULL << VIRTIO_RING_F_INDIRECT_DESC);
ovs_thread_create("vhost_thread", start_vhost_loop, NULL);
ovsthread_once_done(&once);
--
2.4.3
More information about the dev
mailing list