[ovs-dev] [PATCH v2 1/1] dpdk: Update to use DPDK 18.11.

Kevin Traynor ktraynor at redhat.com
Tue Dec 11 11:50:33 UTC 2018


On 12/11/2018 11:46 AM, Ilya Maximets wrote:
> On 11.12.2018 14:23, Ian Stokes wrote:
>> This commit adds support for DPDK v18.11, it includes the following
>> changes.
>>
>> 1. Enable compilation and linkage with dpdk 18.11.0
>>    The following dpdk commits which were introduced after dpdk 17.11.x
>>    require OVS updates to accommodate to the dpdk changes.
>>    - ce17edde ("ethdev: introduce Rx queue offloads API")
>>    - ab3ce1e0 ("ethdev: remove old offload API")
>>    - c06ddf96 ("meter: add configuration profile")
>>    - e58638c3 ("ethdev: fix TPID handling in flow API")
>>    - cd8c7c7c ("ethdev: replace bus specific struct with generic dev")
>>    - ac8d22de ("ethdev: flatten RSS configuration in flow API")
>>
>> 2. Limit configured rss hash functions to only those supported
>>    by the eth device.
>>
>> 3. Set default RSS key in struct action_rss_data, required by OVS
>>    commit- e8a2b5bf ("netdev-dpdk: implement flow offload with rte flow")
>>    when configured with "other_config:hw-offload=true".
>>
>> 4. DEV_RX_OFFLOAD_CRC_STRIP has been removed from DPDK 18.11.
>>    DEV_RX_OFFLOAD_KEEP_CRC can now be used to keep the CRC.
>>    Use the correct flag and check it is supported.
>>
>> 5. rte_eth_dev_attach/detach have been removed from DPDK 18.11.
>>    Replace them with rte_dev_probe/remove.
>>
>> 6. Update docs and travis to use DPDK18.11.
>>
>> This commit squashes the following commits present on the dpdk-latest
>> branch:
>>
>> 7f021f902bb3 ("netdev-dpdk: Upgrade to dpdk v18.08")
>> 270d9216f1ed ("netdev-dpdk: Set scatter based on capabilities")
>> bef2cdc8f412 ("netdev-dpdk: Fix returning the field of malloced struct.")
>> 73c1a65167fc ("redhat: change variable used for non-root user support")
>> eb485f60ce44 ("dpdk: Update to use DPDK 18.11.")
>>
>> For credit all authors of the original commits above have been added as
>> co-authors for this commmit.
>>
>> Signed-off-by: Ophir Munk <ophirmu at mellanox.com>
>> Co-authored-by: Ophir Munk <ophirmu at mellanox.com>

I think perhaps it should also be 'From: Ophir Munk' ? as the majority
of the changes are from his 18.08 patches.

>> Signed-off-by: Kevin Traynor <ktraynor at redhat.com>
>> Co-authored-by: Kevin Traynor <ktraynor at redhat.com>
>> Signed-off-by: Ilya Maximets <i.maximets at samsung.com>
>> Co-authored-by: Ilya Maximets <i.maximets at samsung.com>
>> Signed-off-by: Timothy Redaelli <tredaelli at redhat.com>
>> Co-authored-by: Timothy Redaelli <tredaelli at redhat.com>
>> Signed-off-by: Ian Stokes <ian.stokes at intel.com>
>> ---
>> v1 -> v2
>> * Update DPDK validation example to reference 18.11 instead of 18.08 and
>>   OVS 2.10.0 instead of ovs 2.9.0.
>> * Vertically align netdev_dpdk_policer_pkt_handle arguments.
>> ---
>>  .travis/linux-build.sh                             |   8 +-
>>  Documentation/intro/install/dpdk.rst               |  17 +-
>>  Documentation/topics/dpdk/ring.rst                 |   3 +-
>>  Documentation/topics/dpdk/vhost-user.rst           |   8 +-
>>  NEWS                                               |   1 +
>>  lib/netdev-dpdk.c                                  | 176 +++++++++++++--------
>>  .../usr_lib_systemd_system_ovs-vswitchd.service.in |   2 +-
>>  7 files changed, 133 insertions(+), 82 deletions(-)
>>
>> diff --git a/.travis/linux-build.sh b/.travis/linux-build.sh
>> index 1fe5bbfa9..5f4d838a9 100755
>> --- a/.travis/linux-build.sh
>> +++ b/.travis/linux-build.sh
>> @@ -56,9 +56,9 @@ function install_dpdk()
>>          cd dpdk-$1
>>          git checkout tags/v$1
>>      else
>> -        wget http://fast.dpdk.org/rel/dpdk-$1.tar.gz
>> -        tar xzvf dpdk-$1.tar.gz > /dev/null
>> -        DIR_NAME=$(tar -tf dpdk-$1.tar.gz | head -1 | cut -f1 -d"/")
>> +        wget https://fast.dpdk.org/rel/dpdk-$1.tar.xz
>> +        tar xvf dpdk-$1.tar.xz > /dev/null
>> +        DIR_NAME=$(tar -tf dpdk-$1.tar.xz | head -1 | cut -f1 -d"/")
>>          if [ $DIR_NAME != "dpdk-$1"  ]; then mv $DIR_NAME dpdk-$1; fi
>>          cd dpdk-$1
>>      fi
>> @@ -83,7 +83,7 @@ fi
>>  
>>  if [ "$DPDK" ]; then
>>      if [ -z "$DPDK_VER" ]; then
>> -        DPDK_VER="17.11.4"
>> +        DPDK_VER="18.11"
>>      fi
>>      install_dpdk $DPDK_VER
>>      if [ "$CC" = "clang" ]; then
>> diff --git a/Documentation/intro/install/dpdk.rst b/Documentation/intro/install/dpdk.rst
>> index 13546bb72..cd7ab7577 100644
>> --- a/Documentation/intro/install/dpdk.rst
>> +++ b/Documentation/intro/install/dpdk.rst
>> @@ -42,7 +42,7 @@ Build requirements
>>  In addition to the requirements described in :doc:`general`, building Open
>>  vSwitch with DPDK will require the following:
>>  
>> -- DPDK 17.11.4
>> +- DPDK 18.11
>>  
>>  - A `DPDK supported NIC`_
>>  
>> @@ -71,9 +71,9 @@ Install DPDK
>>  #. Download the `DPDK sources`_, extract the file and set ``DPDK_DIR``::
>>  
>>         $ cd /usr/src/
>> -       $ wget http://fast.dpdk.org/rel/dpdk-17.11.4.tar.xz
>> -       $ tar xf dpdk-17.11.4.tar.xz
>> -       $ export DPDK_DIR=/usr/src/dpdk-stable-17.11.4
>> +       $ wget http://fast.dpdk.org/rel/dpdk-18.11.tar.xz
>> +       $ tar xf dpdk-18.11.tar.xz
>> +       $ export DPDK_DIR=/usr/src/dpdk-18.11
>>         $ cd $DPDK_DIR
>>  
>>  #. (Optional) Configure DPDK as a shared library
>> @@ -282,10 +282,10 @@ Additionally, the library version linked to ovs-vswitchd can be confirmed
>>  with either the ovs-vswitchd logs, or by running either of the commands::
>>  
>>    $ ovs-vswitchd --version
>> -  ovs-vswitchd (Open vSwitch) 2.9.0
>> -  DPDK 17.11.0
>> +  ovs-vswitchd (Open vSwitch) 2.10.0
>> +  DPDK 18.11.0
>>    $ ovs-vsctl get Open_vSwitch . dpdk_version
>> -  "DPDK 17.11.0"
>> +  "DPDK 18.11.0"
> 
> This is still inconsistent because 2.10.0 supports 17.11, not 18.11.
> Can we just drop this change ? It's only the example and it's not
> required to have most recent versions here.
> 

+1, was just about to make same comment. Having an incorrect pairing
could confuse.

> Best regards, Ilya Maximets.
> 



More information about the dev mailing list