Re: [ovs-dev] [RFC PATCH 1/1] dpdk: Update to use DPDK v21.11.

2021-12-09 Thread Stokes, Ian
> > On Tue, Nov 30, 2021 at 4:54 PM Ian Stokes  wrote:
> > >
> > > This commit adds support for DPDK v21.11, it includes the following
> > > changes.
> > >
> > > 1. ci: Install python elftools for DPDK 21.02.
> > > 2. ci: Update meson requirement for DPDK 21.05.
> > > 3. netdev-dpdk: Fix build with 21.05.
> > > 4. ci: Compile DPDK in non developer mode.
> > >
> > >
> >
> http://patchwork.ozlabs.org/project/openvswitch/list/?series=242480=*
> > >
> > > 5. netdev-dpdk: Remove access to DPDK internals.
> > > 6. netdev-dpdk: Remove unused attribute from rte_flow rule.
> > > 7. netdev-dpdk: Fix mbuf macros namespace with 21.11-rc1.
> > > 8. netdev-dpdk: Fix vhost namespace with 21.11-rc2.
> > >
> > >
> >
> http://patchwork.ozlabs.org/project/openvswitch/list/?series=271040=*
> > >
> > > For credit all authors of the original commits to 'dpdk-latest' with the 
> > > above
> > > changes have been added as co-authors for this commit.
> > >
> > > Signed-off-by: David Marchand 
> > > Co-authored-by: David Marchand 
> > > Signed-off-by: Ian Stokes 
> > > ---
> > >  .ci/linux-build.sh   |   6 +-
> > >  .ci/linux-prepare.sh |   4 +-
> > >  Documentation/faq/releases.rst   |   2 +-
> > >  Documentation/intro/install/dpdk.rst |  16 ++---
> > >  Documentation/topics/dpdk/phy.rst|   8 +--
> > >  Documentation/topics/dpdk/vdev.rst   |   2 +-
> > >  Documentation/topics/dpdk/vhost-user.rst |   2 +-
> > >  Documentation/topics/testing.rst |   2 +-
> >
> > I did a quick pass and caught some small things to fix:
> >
> > - should we list 21.11.x for 2.17.x in Documentation/faq/releases.rst table?
> 
> Good point, in the past we've held off on adding this until the 2.17 branch is
> actually created so I left this out for the moment.
> >
> >
> > - there is one reference to 20.11 documentation in
> > Documentation/topics/userspace-tso.rst:__
> > https://doc.dpdk.org/guides-20.11/nics/overview.html
> >
> Good catch, will fix.
> 
> >
> > - Fedora spec still references 20.11:
> > rhel/openvswitch-fedora.spec.in:BuildRequires: dpdk-devel >= 20.11
> Happy to update this, I think in the past its been carried out by the RH 
> folks.
> 
> >
> >
> > The rest is the same than dpdk-latest branch (with the experimental
> > api build check kept in dpdk-latest only).
> > So lgtm, and with those small things from above fixed, feel free to add:
> 
> So the one thing I spotted was the dpdk unit tests now fail, it seems there 
> is a
> new log we need to track from testpmd I'm guessing to ensure they work, will
> roll this change into the v1 of this patch along with the changes above.
> 
> >
> > Reviewed-by: David Marchand 
> >
> 

Hi David,

Apologies for the delay, very busy this week with the conference etc. I've sent 
a new v1 with the changes above.

http://patchwork.ozlabs.org/project/openvswitch/list/?series=275984

We hit some issues with the unit tests (separate to the changes we discussed) 
which caused some delay, however they seem unrelated to the update itself to 
21.11 and more related to some of the platforms we were testing on so shouldn't 
block 21.11 update, apologies for the delay while investigating this.

Thanks
Ian
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] [RFC PATCH 1/1] dpdk: Update to use DPDK v21.11.

2021-12-02 Thread David Marchand
On Thu, Dec 2, 2021 at 1:26 PM Stokes, Ian  wrote:
> > The rest is the same than dpdk-latest branch (with the experimental
> > api build check kept in dpdk-latest only).
> > So lgtm, and with those small things from above fixed, feel free to add:
>
> So the one thing I spotted was the dpdk unit tests now fail, it seems there 
> is a new log we need to track from testpmd I'm guessing to ensure they work, 
> will roll this change into the v1 of this patch along with the changes above.

I caught one issue depending on hugepage sizes availability when
working on system-dpdk ut but I had dropped this hunk and forgot when
I sent the patches for the master branch.
I suspect this is the one you hit.

This is due to c69150679891 ("eal/linux: improve no hugepages logging").

You'll want to update those warning logs in system-dpdk.at, like:
-/EAL: No free hugepages reported in hugepages-1048576kB/d"])
+/EAL: No free .* hugepages reported/d"])

This will likely conflict with my patchset on system-dpdk, but this is
easy to fix.


-- 
David Marchand

___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] [RFC PATCH 1/1] dpdk: Update to use DPDK v21.11.

2021-12-02 Thread Ilya Maximets
On 12/2/21 13:37, David Marchand wrote:
> On Thu, Dec 2, 2021 at 1:18 PM Ilya Maximets  wrote:
>>
>> On 12/2/21 12:47, David Marchand wrote:
>>> I did a quick pass and caught some small things to fix:
>>>
>>> - should we list 21.11.x for 2.17.x in Documentation/faq/releases.rst table?
>>
>> This will be done as part of "Prepare for 2.17.0." patch while preparing
>> for the actual release along with update for the kernel support list.
> 
> I was not sure because of 8d04161534e1 ("faq: Update OVS/DPDK version
> table for OVS 2.15.").

Yeah.  Before 2.16 this kind of documentation updates were more or less
random as we always forgot to do that.

> But that's better to do this kind of update once, when preparing the release.

Keeping them to the release patches gives some stability and makes it harder
to forget to update the documentation, IMO.

> 
> Thanks Ilya.
> 
> 
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] [RFC PATCH 1/1] dpdk: Update to use DPDK v21.11.

2021-12-02 Thread David Marchand
On Thu, Dec 2, 2021 at 1:18 PM Ilya Maximets  wrote:
>
> On 12/2/21 12:47, David Marchand wrote:
> > I did a quick pass and caught some small things to fix:
> >
> > - should we list 21.11.x for 2.17.x in Documentation/faq/releases.rst table?
>
> This will be done as part of "Prepare for 2.17.0." patch while preparing
> for the actual release along with update for the kernel support list.

I was not sure because of 8d04161534e1 ("faq: Update OVS/DPDK version
table for OVS 2.15.").
But that's better to do this kind of update once, when preparing the release.

Thanks Ilya.


-- 
David Marchand

___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] [RFC PATCH 1/1] dpdk: Update to use DPDK v21.11.

2021-12-02 Thread Stokes, Ian
> On Tue, Nov 30, 2021 at 4:54 PM Ian Stokes  wrote:
> >
> > This commit adds support for DPDK v21.11, it includes the following
> > changes.
> >
> > 1. ci: Install python elftools for DPDK 21.02.
> > 2. ci: Update meson requirement for DPDK 21.05.
> > 3. netdev-dpdk: Fix build with 21.05.
> > 4. ci: Compile DPDK in non developer mode.
> >
> >
> http://patchwork.ozlabs.org/project/openvswitch/list/?series=242480=*
> >
> > 5. netdev-dpdk: Remove access to DPDK internals.
> > 6. netdev-dpdk: Remove unused attribute from rte_flow rule.
> > 7. netdev-dpdk: Fix mbuf macros namespace with 21.11-rc1.
> > 8. netdev-dpdk: Fix vhost namespace with 21.11-rc2.
> >
> >
> http://patchwork.ozlabs.org/project/openvswitch/list/?series=271040=*
> >
> > For credit all authors of the original commits to 'dpdk-latest' with the 
> > above
> > changes have been added as co-authors for this commit.
> >
> > Signed-off-by: David Marchand 
> > Co-authored-by: David Marchand 
> > Signed-off-by: Ian Stokes 
> > ---
> >  .ci/linux-build.sh   |   6 +-
> >  .ci/linux-prepare.sh |   4 +-
> >  Documentation/faq/releases.rst   |   2 +-
> >  Documentation/intro/install/dpdk.rst |  16 ++---
> >  Documentation/topics/dpdk/phy.rst|   8 +--
> >  Documentation/topics/dpdk/vdev.rst   |   2 +-
> >  Documentation/topics/dpdk/vhost-user.rst |   2 +-
> >  Documentation/topics/testing.rst |   2 +-
> 
> I did a quick pass and caught some small things to fix:
> 
> - should we list 21.11.x for 2.17.x in Documentation/faq/releases.rst table?

Good point, in the past we've held off on adding this until the 2.17 branch is 
actually created so I left this out for the moment.
> 
> 
> - there is one reference to 20.11 documentation in
> Documentation/topics/userspace-tso.rst:__
> https://doc.dpdk.org/guides-20.11/nics/overview.html
> 
Good catch, will fix.

> 
> - Fedora spec still references 20.11:
> rhel/openvswitch-fedora.spec.in:BuildRequires: dpdk-devel >= 20.11
Happy to update this, I think in the past its been carried out by the RH folks.

> 
> 
> The rest is the same than dpdk-latest branch (with the experimental
> api build check kept in dpdk-latest only).
> So lgtm, and with those small things from above fixed, feel free to add:

So the one thing I spotted was the dpdk unit tests now fail, it seems there is 
a new log we need to track from testpmd I'm guessing to ensure they work, will 
roll this change into the v1 of this patch along with the changes above.

> 
> Reviewed-by: David Marchand 
> 

Thanks for the review.

Thanks
Ian
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] [RFC PATCH 1/1] dpdk: Update to use DPDK v21.11.

2021-12-02 Thread Ilya Maximets
On 12/2/21 12:47, David Marchand wrote:
> I did a quick pass and caught some small things to fix:
> 
> - should we list 21.11.x for 2.17.x in Documentation/faq/releases.rst table?

This will be done as part of "Prepare for 2.17.0." patch while preparing
for the actual release along with update for the kernel support list.

Best regards, Ilya Maximets.
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] [RFC PATCH 1/1] dpdk: Update to use DPDK v21.11.

2021-12-02 Thread David Marchand
On Tue, Nov 30, 2021 at 4:54 PM Ian Stokes  wrote:
>
> This commit adds support for DPDK v21.11, it includes the following
> changes.
>
> 1. ci: Install python elftools for DPDK 21.02.
> 2. ci: Update meson requirement for DPDK 21.05.
> 3. netdev-dpdk: Fix build with 21.05.
> 4. ci: Compile DPDK in non developer mode.
>
>http://patchwork.ozlabs.org/project/openvswitch/list/?series=242480=*
>
> 5. netdev-dpdk: Remove access to DPDK internals.
> 6. netdev-dpdk: Remove unused attribute from rte_flow rule.
> 7. netdev-dpdk: Fix mbuf macros namespace with 21.11-rc1.
> 8. netdev-dpdk: Fix vhost namespace with 21.11-rc2.
>
>http://patchwork.ozlabs.org/project/openvswitch/list/?series=271040=*
>
> For credit all authors of the original commits to 'dpdk-latest' with the above
> changes have been added as co-authors for this commit.
>
> Signed-off-by: David Marchand 
> Co-authored-by: David Marchand 
> Signed-off-by: Ian Stokes 
> ---
>  .ci/linux-build.sh   |   6 +-
>  .ci/linux-prepare.sh |   4 +-
>  Documentation/faq/releases.rst   |   2 +-
>  Documentation/intro/install/dpdk.rst |  16 ++---
>  Documentation/topics/dpdk/phy.rst|   8 +--
>  Documentation/topics/dpdk/vdev.rst   |   2 +-
>  Documentation/topics/dpdk/vhost-user.rst |   2 +-
>  Documentation/topics/testing.rst |   2 +-

I did a quick pass and caught some small things to fix:

- should we list 21.11.x for 2.17.x in Documentation/faq/releases.rst table?


- there is one reference to 20.11 documentation in
Documentation/topics/userspace-tso.rst:__
https://doc.dpdk.org/guides-20.11/nics/overview.html


- Fedora spec still references 20.11:
rhel/openvswitch-fedora.spec.in:BuildRequires: dpdk-devel >= 20.11


The rest is the same than dpdk-latest branch (with the experimental
api build check kept in dpdk-latest only).
So lgtm, and with those small things from above fixed, feel free to add:

Reviewed-by: David Marchand 

Thanks Ian.


-- 
David Marchand

___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] [RFC PATCH 1/1] dpdk: Update to use DPDK v21.11.

2021-12-02 Thread Maxime Coquelin

Hi Ian,

On 11/30/21 16:53, Ian Stokes wrote:

This commit adds support for DPDK v21.11, it includes the following
changes.

1. ci: Install python elftools for DPDK 21.02.
2. ci: Update meson requirement for DPDK 21.05.
3. netdev-dpdk: Fix build with 21.05.
4. ci: Compile DPDK in non developer mode.

http://patchwork.ozlabs.org/project/openvswitch/list/?series=242480=*

5. netdev-dpdk: Remove access to DPDK internals.
6. netdev-dpdk: Remove unused attribute from rte_flow rule.
7. netdev-dpdk: Fix mbuf macros namespace with 21.11-rc1.
8. netdev-dpdk: Fix vhost namespace with 21.11-rc2.


Thanks for taking care of this one.



http://patchwork.ozlabs.org/project/openvswitch/list/?series=271040=*

For credit all authors of the original commits to 'dpdk-latest' with the above
changes have been added as co-authors for this commit.

Signed-off-by: David Marchand 
Co-authored-by: David Marchand 
Signed-off-by: Ian Stokes 
---
  .ci/linux-build.sh   |   6 +-
  .ci/linux-prepare.sh |   4 +-
  Documentation/faq/releases.rst   |   2 +-
  Documentation/intro/install/dpdk.rst |  16 ++---
  Documentation/topics/dpdk/phy.rst|   8 +--
  Documentation/topics/dpdk/vdev.rst   |   2 +-
  Documentation/topics/dpdk/vhost-user.rst |   2 +-
  Documentation/topics/testing.rst |   2 +-
  NEWS |   1 +
  lib/dp-packet.h  |  26 +++
  lib/netdev-dpdk.c| 115 ---
  11 files changed, 98 insertions(+), 86 deletions(-)



Reviewed-by: Maxime Coquelin 

Thanks,
Maxime

___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


[ovs-dev] [RFC PATCH 1/1] dpdk: Update to use DPDK v21.11.

2021-11-30 Thread Ian Stokes
This commit adds support for DPDK v21.11, it includes the following
changes.

1. ci: Install python elftools for DPDK 21.02.
2. ci: Update meson requirement for DPDK 21.05.
3. netdev-dpdk: Fix build with 21.05.
4. ci: Compile DPDK in non developer mode.

   http://patchwork.ozlabs.org/project/openvswitch/list/?series=242480=*

5. netdev-dpdk: Remove access to DPDK internals.
6. netdev-dpdk: Remove unused attribute from rte_flow rule.
7. netdev-dpdk: Fix mbuf macros namespace with 21.11-rc1.
8. netdev-dpdk: Fix vhost namespace with 21.11-rc2.

   http://patchwork.ozlabs.org/project/openvswitch/list/?series=271040=*

For credit all authors of the original commits to 'dpdk-latest' with the above
changes have been added as co-authors for this commit.

Signed-off-by: David Marchand 
Co-authored-by: David Marchand 
Signed-off-by: Ian Stokes 
---
 .ci/linux-build.sh   |   6 +-
 .ci/linux-prepare.sh |   4 +-
 Documentation/faq/releases.rst   |   2 +-
 Documentation/intro/install/dpdk.rst |  16 ++---
 Documentation/topics/dpdk/phy.rst|   8 +--
 Documentation/topics/dpdk/vdev.rst   |   2 +-
 Documentation/topics/dpdk/vhost-user.rst |   2 +-
 Documentation/topics/testing.rst |   2 +-
 NEWS |   1 +
 lib/dp-packet.h  |  26 +++
 lib/netdev-dpdk.c| 115 ---
 11 files changed, 98 insertions(+), 86 deletions(-)

diff --git a/.ci/linux-build.sh b/.ci/linux-build.sh
index 863f02388..ff6ae4b10 100755
--- a/.ci/linux-build.sh
+++ b/.ci/linux-build.sh
@@ -159,6 +159,10 @@ function install_dpdk()
 # Disable building DPDK unit tests. Not needed for OVS build or tests.
 DPDK_OPTS="$DPDK_OPTS -Dtests=false"
 
+# Disable DPDK developer mode, this results in less build checks and less
+# meson verbose outputs.
+DPDK_OPTS="$DPDK_OPTS -Ddeveloper_mode=disabled"
+
 # Install DPDK using prefix.
 DPDK_OPTS="$DPDK_OPTS --prefix=$(pwd)/build"
 
@@ -216,7 +220,7 @@ fi
 
 if [ "$DPDK" ] || [ "$DPDK_SHARED" ]; then
 if [ -z "$DPDK_VER" ]; then
-DPDK_VER="20.11.1"
+DPDK_VER="21.11"
 fi
 install_dpdk $DPDK_VER
 if [ "$CC" = "clang" ]; then
diff --git a/.ci/linux-prepare.sh b/.ci/linux-prepare.sh
index 360c0a68e..b3addf404 100755
--- a/.ci/linux-prepare.sh
+++ b/.ci/linux-prepare.sh
@@ -21,8 +21,8 @@ make -j4 HAVE_LLVM= HAVE_SQLITE= install
 cd ..
 
 pip3 install --disable-pip-version-check --user \
-flake8 hacking sphinx wheel setuptools
-pip3 install --user  'meson==0.47.1'
+flake8 hacking sphinx wheel setuptools pyelftools
+pip3 install --user  'meson==0.49.2'
 
 if [ "$M32" ]; then
 # Installing 32-bit libraries.
diff --git a/Documentation/faq/releases.rst b/Documentation/faq/releases.rst
index 64bc577e0..59d55202d 100644
--- a/Documentation/faq/releases.rst
+++ b/Documentation/faq/releases.rst
@@ -225,7 +225,7 @@ Q: Are all the DPDK releases that OVS versions work with 
maintained?
 The latest information about DPDK stable and LTS releases can be found
 at `DPDK stable`_.
 
-.. _DPDK stable: http://doc.dpdk.org/guides-20.11/contributing/stable.html
+.. _DPDK stable: http://doc.dpdk.org/guides-21.11/contributing/stable.html
 
 Q: I get an error like this when I configure Open vSwitch:
 
diff --git a/Documentation/intro/install/dpdk.rst 
b/Documentation/intro/install/dpdk.rst
index d554409fc..d9f44055d 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 20.11.1
+- DPDK 21.11
 
 - A `DPDK supported NIC`_
 
@@ -59,8 +59,8 @@ vSwitch with DPDK will require the following:
 
 Detailed system requirements can be found at `DPDK requirements`_.
 
-.. _DPDK supported NIC: https://doc.dpdk.org/guides-20.11/nics/index.html
-.. _DPDK requirements: 
https://doc.dpdk.org/guides-20.11/linux_gsg/sys_reqs.html
+.. _DPDK supported NIC: https://doc.dpdk.org/guides-21.11/nics/index.html
+.. _DPDK requirements: 
https://doc.dpdk.org/guides-21.11/linux_gsg/sys_reqs.html
 
 .. _dpdk-install:
 
@@ -73,9 +73,9 @@ Install DPDK
 #. Download the `DPDK sources`_, extract the file and set ``DPDK_DIR``::
 
$ cd /usr/src/
-   $ wget https://fast.dpdk.org/rel/dpdk-20.11.1.tar.xz
-   $ tar xf dpdk-20.11.1.tar.xz
-   $ export DPDK_DIR=/usr/src/dpdk-stable-20.11.1
+   $ wget https://fast.dpdk.org/rel/dpdk-21.11.tar.xz
+   $ tar xf dpdk-21.11.tar.xz
+   $ export DPDK_DIR=/usr/src/dpdk-21.11
$ cd $DPDK_DIR
 
 #. Configure and install DPDK using Meson
@@ -121,7 +121,7 @@ Install DPDK
 
 .. _DPDK sources: http://dpdk.org/rel
 .. _DPDK documentation:
-   https://doc.dpdk.org/guides-20.11/linux_gsg/build_dpdk.html
+