[ovs-dev] [PATCH ovn] controller: Fix toggling ct zone ids.

2021-02-12 Thread numans
From: Numan Siddique ovn-controller maintains a shash of pending ct zone entries to flush the ct zone ids and to store/remove the allocated zone id in/from the OVS bridge.external_ids. While adding an entry to the shash, the function 'add_pending_ct_zone_entry()' doesn't check for existing

[ovs-dev] [PATCH branch-2.14 v2] dpdk: Use DPDK 19.11.6 release.

2021-02-12 Thread Hariprasad Govindharajan
Modify ci linux build script to use the latest DPDK stable release. Modify Documentation to use the latest DPDK stable release 19.11.6. Update NEWS file to reflect the latest DPDK stable release. Note: 19.11.6 is the latest stable release in the 19.11 series. So both OvS 2.13 and 2.14 are updated

[ovs-dev] [PATCH branch-2.13 v3] dpdk: Use DPDK 19.11.6 release.

2021-02-12 Thread Hariprasad Govindharajan
Modify ci linux build script to use the latest DPDK stable release. Modify Documentation to use the latest DPDK stable release 19.11.6. Update NEWS file to reflect the latest DPDK stable release. Note: 19.11.6 is the latest stable release in the 19.11 series. So OvS 2.13 is updated to use 19.11.6

[ovs-dev] [PATCH branch-2.12 v3] dpdk: Use DPDK 18.11.11 release.

2021-02-12 Thread Hariprasad Govindharajan
Modify ci linux build script to use the latest DPDK stable release. Modify Documentation to use the latest DPDK stable release 18.11.11. Update NEWS file to reflect the latest DPDK stable release. Note: 18.11.11 is the final support release for the 18.11 series, no further support releases for

[ovs-dev] [PATCH branch-2.11 v4] dpdk: Use DPDK 18.11.11 release.

2021-02-12 Thread Hariprasad Govindharajan
Modify ci linux build script to use the latest DPDK stable release. Modify Documentation to use the latest DPDK stable release 18.11.11. Update NEWS file to reflect the latest DPDK stable release. Note: 18.11.11 is the final support release for the 18.11 series, no further support releases for

Re: [ovs-dev] [PATCH 1/2] dpif-netdev: auto load balance log state on user request.

2021-02-12 Thread Ilya Maximets
On 2/12/21 8:33 PM, Kevin Traynor wrote: > On 12/02/2021 19:17, Ilya Maximets wrote: >> On 2/12/21 6:39 PM, Stokes, Ian wrote: At present the log displays the auto load balance state everytime it is changed. There are some cases where the user will try to enable auto load

Re: [ovs-dev] [PATCH branch-2.13 v2] dpdk: Use DPDK 19.11.6 release.

2021-02-12 Thread Ilya Maximets
On 2/12/21 8:32 PM, Hariprasad Govindharajan wrote: > Modify ci linux build script to use the latest DPDK stable release. > Modify Documentation to use the latest DPDK stable release > 19.11.6. Update NEWS file to reflect the latest DPDK stable release. > > Note: 19.11.6 is the latest stable

Re: [ovs-dev] [PATCH 1/2] dpif-netdev: auto load balance log state on user request.

2021-02-12 Thread Kevin Traynor
On 12/02/2021 19:17, Ilya Maximets wrote: > On 2/12/21 6:39 PM, Stokes, Ian wrote: >>> At present the log displays the auto load balance state >>> everytime it is changed. >>> >>> There are some cases where the user will try to enable >>> auto load balance, but it cannot be enabled because not >>>

[ovs-dev] [PATCH branch-2.13 v2] dpdk: Use DPDK 19.11.6 release.

2021-02-12 Thread Hariprasad Govindharajan
Modify ci linux build script to use the latest DPDK stable release. Modify Documentation to use the latest DPDK stable release 19.11.6. Update NEWS file to reflect the latest DPDK stable release. Note: 19.11.6 is the latest stable release in the 19.11 series. So OvS 2.13 is updated to use 19.11.6

[ovs-dev] [PATCH branch-2.12 v2] dpdk: Use DPDK 18.11.11 release.

2021-02-12 Thread Hariprasad Govindharajan
Modify ci linux build script to use the latest DPDK stable release. Modify Documentation to use the latest DPDK stable release 18.11.11. Update NEWS file to reflect the latest DPDK stable release. Note: 18.11.11 is the final support release for the 18.11 series, no further support releases for

Re: [ovs-dev] [PATCH 2/2] dpif-netdev: auto load balance improve enable/disable logs.

2021-02-12 Thread Kevin Traynor
On 12/02/2021 17:42, Stokes, Ian wrote: >> In order for auto load balance to be enabled, there are >> minimum requirements of more than one PMD and more than >> one Rxq on at least one PMD. >> >> If these conditions are not met a rebalance would be pointless, >> so auto load balance is not

Re: [ovs-dev] [PATCH 1/2] dpif-netdev: auto load balance log state on user request.

2021-02-12 Thread Ilya Maximets
On 2/12/21 6:39 PM, Stokes, Ian wrote: >> At present the log displays the auto load balance state >> everytime it is changed. >> >> There are some cases where the user will try to enable >> auto load balance, but it cannot be enabled because not >> enough PMDs or RxQs. As the state does not

Re: [ovs-dev] [PATCH] pcap-file: Fix calculation of TCP payload length in tcp_reader_run().

2021-02-12 Thread William Tu
On Tue, Feb 2, 2021 at 10:00 AM Ben Pfaff wrote: > > On Tue, Feb 02, 2021 at 05:11:09PM +0100, Ilya Maximets wrote: > > On 1/21/21 11:33 PM, Ben Pfaff wrote: > > > The calculation in tcp_reader_run() failed to account for L2 padding. > > > This fixes the problem, by moving the existing function >

Re: [ovs-dev] [PATCH branch-2.11 v2] dpdk: Use DPDK 18.11.11 release.

2021-02-12 Thread 0-day Robot
Bleep bloop. Greetings Hariprasad Govindharajan, I am a robot and I have tried out your patch. Thanks for your contribution. I encountered some error that I wasn't expecting. See the details below. git-am: .git/rebase-apply/patch:89: trailing whitespace. - DPDK warning: 1 line adds

[ovs-dev] [PATCH ovn] controller: introduce coverage_counters for ovn-controller incremental processing

2021-02-12 Thread Lorenzo Bianconi
In order to help understanding system behaviour for debugging purpose, introduce coverage counters for ovn-controller I-P engine. https://bugzilla.redhat.com/show_bug.cgi?id=1890902 Signed-off-by: Lorenzo Bianconi --- controller/ovn-controller.c | 77 +++--

[ovs-dev] [PATCH branch-2.11 v3] dpdk: Use DPDK 18.11.11 release.

2021-02-12 Thread Hariprasad Govindharajan
Modify ci linux build script to use the latest DPDK stable release. Modify Documentation to use the latest DPDK stable release 18.11.11. Update NEWS file to reflect the latest DPDK stable release. Note: 18.11.11 is the final support release for the 18.11 series, no further support releases for

Re: [ovs-dev] [PATCH 2/2] dpif-netdev: auto load balance improve enable/disable logs.

2021-02-12 Thread Stokes, Ian
> In order for auto load balance to be enabled, there are > minimum requirements of more than one PMD and more than > one Rxq on at least one PMD. > > If these conditions are not met a rebalance would be pointless, > so auto load balance is not enabled. > > Currently the state is logged but in

Re: [ovs-dev] [PATCH 1/2] dpif-netdev: auto load balance log state on user request.

2021-02-12 Thread Stokes, Ian
> At present the log displays the auto load balance state > everytime it is changed. > > There are some cases where the user will try to enable > auto load balance, but it cannot be enabled because not > enough PMDs or RxQs. As the state does not change, there > is no new log of the state. > >

[ovs-dev] [PATCH branch-2.11 v2] dpdk: Use DPDK 18.11.11 release.

2021-02-12 Thread Hariprasad Govindharajan
Modify ci linux build script to use the latest DPDK stable release. Modify Documentation to use the latest DPDK stable release 18.11.11. Update NEWS file to reflect the latest DPDK stable release. Note: 18.11.11 is the final support release for the 18.11 series, no further support releases for

[ovs-dev] [PATCH v9 16/16] dpif-netdev: POC of future DPIF and MFEX AVX512 optimizations

2021-02-12 Thread Harry van Haaren
This is a POC patch, showing future DPIF and MFEX optimizations. The main optimization is doing MiniflowExtract in AVX512. This speeds up the specific protocol parsing a lot. Other optimizations for DPIF show value in removing complexity from the code by specialization. In particular if only

[ovs-dev] [PATCH v9 12/16] dpdk: Cache result of CPU ISA checks.

2021-02-12 Thread Harry van Haaren
As a small optimization, this patch caches the result of a CPU ISA check from DPDK. Particularly in the case of running the DPCLS autovalidator (which repeatedly probes subtables) this reduces the amount of CPU ISA lookups from the DPDK level. By caching them at the OVS/dpdk.c level, the ISA

[ovs-dev] [PATCH v9 05/16] dpif-avx512: Add HWOL support to avx512 dpif.

2021-02-12 Thread Harry van Haaren
Partial hardware offload is implemented in a very similar way to the scalar dpif. Signed-off-by: Harry van Haaren --- lib/dpif-netdev-avx512.c | 28 +--- 1 file changed, 25 insertions(+), 3 deletions(-) diff --git a/lib/dpif-netdev-avx512.c b/lib/dpif-netdev-avx512.c

[ovs-dev] [PATCH v9 15/16] netdev: Optimize netdev_send_prepare_batch

2021-02-12 Thread Harry van Haaren
Optimize for the best case here where all packets will be compatible with 'netdev_flags'. Signed-off-by: Harry van Haaren Co-authored-by: Cian Ferriter Signed-off-by: Cian Ferriter --- v9: rebase 2 --- NEWS | 2 ++ lib/netdev.c | 31 ++- 2 files changed,

[ovs-dev] [PATCH v9 14/16] dpif-netdev: Optimize dp output action

2021-02-12 Thread Harry van Haaren
This commit optimizes the output action, by enabling the compiler to optimize the code better through reducing code complexity. The core concept of this optimization is that the array-length checks have already been performed above the copying code, so can be removed. Removing of the per-packet

[ovs-dev] [PATCH v9 11/16] dpif-netdev/dpcls: specialize more subtable signatures.

2021-02-12 Thread Harry van Haaren
This commit adds more subtables to be specialized. The traffic pattern here being matched is VXLAN traffic subtables, which commonly have (5,3), (9,1) and (9,4) subtable fingerprints. Signed-off-by: Harry van Haaren --- v8: Add NEWS entry. --- NEWS | 2 ++

[ovs-dev] [PATCH v9 13/16] dpcls-avx512: enabling avx512 vector popcount instruction.

2021-02-12 Thread Harry van Haaren
This commit enables the AVX512-VPOPCNTDQ Vector Popcount instruction. This instruction is not available on every CPU that supports the AVX512-F Foundation ISA, hence it is enabled only when the additional VPOPCNTDQ ISA check is passed. The vector popcount instruction is used instead of the AVX512

[ovs-dev] [PATCH v9 10/16] dpif-netdev/dpcls-avx512: enable 16 block processing.

2021-02-12 Thread Harry van Haaren
This commit implements larger subtable searches in avx512. A limitation of the previous implementation was that up to 8 blocks of miniflow data could be matched on (so a subtable with 8 blocks was handled in avx, but 9 blocks or more would fall back to scalar/generic). This limitation is removed

[ovs-dev] [PATCH v9 08/16] docs/dpdk/bridge: Add dpif performance section.

2021-02-12 Thread Harry van Haaren
From: Cian Ferriter This section details how two new commands can be used to list and select the different dpif implementations. It also details how a non default dpif implementation can be tested with the OVS unit test suite. Add NEWS updates for the dpif-netdev.c refactor and the new dpif

[ovs-dev] [PATCH v9 07/16] dpif-netdev: Add command to get dpif implementations.

2021-02-12 Thread Harry van Haaren
This commit adds a new command to retrieve the list of available DPIF implementations. This can be used by to check what implementations of the DPIF are available in any given OVS binary. Usage: $ ovs-appctl dpif-netdev/dpif-get Signed-off-by: Harry van Haaren ---

[ovs-dev] [PATCH v9 09/16] dpif-netdev/dpcls: Refactor function names to dpcls.

2021-02-12 Thread Harry van Haaren
This commit refactors the function names from netdev_* namespace to the dpcls_* namespace, as they are only used by dpcls code. With the name change, it becomes more obvious that the functions belong to dpcls functionality, and in the dpif-netdev-private-dpcls.h header file. Signed-off-by: Harry

[ovs-dev] [PATCH v9 06/16] dpif-netdev: Add command to switch dpif implementation.

2021-02-12 Thread Harry van Haaren
This commit adds a new command to allow the user to switch the active DPIF implementation at runtime. A probe function is executed before switching the DPIF implementation, to ensure the CPU is capable of running the ISA required. For example, the below code will switch to the AVX512 enabled DPIF

[ovs-dev] [PATCH v9 02/16] dpif-netdev: Split HWOL out to own header file.

2021-02-12 Thread Harry van Haaren
This commit moves the datapath lookup functions required for hardware offload to a seperate file. This allows other DPIF implementations to access the lookup functions, encouraging code reuse. Signed-off-by: Harry van Haaren --- lib/automake.mk| 1 +

[ovs-dev] [PATCH v9 04/16] dpif-avx512: Add ISA implementation of dpif.

2021-02-12 Thread Harry van Haaren
This commit adds the AVX512 implementation of DPIF functionality, specifically the dp_netdev_input_outer_avx512 function. This function only handles outer (no re-circulations), and is optimized to use the AVX512 ISA for packet batching and other DPIF work. Sparse is not able to handle the AVX512

[ovs-dev] [PATCH v9 01/16] dpif-netdev: Refactor to multiple header files.

2021-02-12 Thread Harry van Haaren
Split the very large file dpif-netdev.c and the datastructures it contains into multiple header files. Each header file is responsible for the datastructures of that component. This logical split allows better reuse and modularity of the code, and reduces the very large file dpif-netdev.c to be

[ovs-dev] [PATCH v9 03/16] dpif-netdev: Add function pointer for netdev input.

2021-02-12 Thread Harry van Haaren
This commit adds a function pointer to the pmd thread data structure, giving the pmd thread flexibility in its dpif-input function choice. This allows choosing of the implementation based on ISA capabilities of the runtime CPU, leading to optimizations and higher performance. Signed-off-by: Harry

[ovs-dev] [PATCH v9 00/16] DPIF Framework + Optimizations

2021-02-12 Thread Harry van Haaren
v9 Summary: - Added AVX512 POC work for DPIF and MFEX in single patch at end -- Note that the AVX512 MFEX is for Ether()/IP()/UDP() traffic. -- A significant performance boost is possible with these optimizations. v8 Summary: - Added NEWS entries for significant changes - Added scalar

Re: [ovs-dev] [OVN Patch v14 2/3] ovn-northd: Introduce parallel lflow build

2021-02-12 Thread 0-day Robot
Bleep bloop. Greetings Anton Ivanov, I am a robot and I have tried out your patch. Thanks for your contribution. I encountered some error that I wasn't expecting. See the details below. checkpatch: WARNING: Line is 80 characters long (recommended limit is 79) #155 FILE:

Re: [ovs-dev] [OVN Patch v14 1/3] ovn-libs: Add support for parallel processing

2021-02-12 Thread 0-day Robot
Bleep bloop. Greetings Anton Ivanov, I am a robot and I have tried out your patch. Thanks for your contribution. I encountered some error that I wasn't expecting. See the details below. checkpatch: WARNING: Line is 83 characters long (recommended limit is 79) #187 FILE:

[ovs-dev] [OVN Patch v14 2/3] ovn-northd: Introduce parallel lflow build

2021-02-12 Thread Anton Ivanov
Datapaths, ports, igmp groups and load balancers can now be iterated over in parallel in order to speed up the lflow generation. This decreases the time needed to generate the logical flows by a factor of 4+ on a 6 core/12 thread CPU without datapath groups - from 0.8-1 microseconds per flow down

[ovs-dev] [OVN Patch v14 3/3] ovn-northd: Add configuration option for parallel lflow build

2021-02-12 Thread Anton Ivanov
Signed-off-by: Anton Ivanov --- northd/ovn-northd.c | 3 +++ ovn-nb.xml | 13 + 2 files changed, 16 insertions(+) diff --git a/northd/ovn-northd.c b/northd/ovn-northd.c index c8cdc4861..e95cfa556 100644 --- a/northd/ovn-northd.c +++ b/northd/ovn-northd.c @@ -12850,6

[ovs-dev] [OVN Patch v14 1/3] ovn-libs: Add support for parallel processing

2021-02-12 Thread Anton Ivanov
This adds a set of functions and macros intended to process hashes in parallel. The principles of operation are documented in the fasthmap.h If these one day go into the OVS tree, the OVS tree versions would be used in preference. Signed-off-by: Anton Ivanov --- lib/automake.mk | 2

Re: [ovs-dev] [PATCH v2] faq: Update OVS/DPDK version table for OVS 2.15.

2021-02-12 Thread Stokes, Ian
> Indicate that OVS 2.15 uses DPDK 20.11. > > Signed-off-by: Hariprasad Govindharajan > > Acked-by: Kevin Traynor Thanks for this Hari, will apply to master and 2.15. Thanks Ian > --- > v2: > amended the commit message based on review comments > --- > Documentation/faq/releases.rst | 1 + >

[ovs-dev] [PATCH v2] faq: Update OVS/DPDK version table for OVS 2.15.

2021-02-12 Thread Hariprasad Govindharajan
Indicate that OVS 2.15 uses DPDK 20.11. Signed-off-by: Hariprasad Govindharajan Acked-by: Kevin Traynor --- v2: amended the commit message based on review comments --- Documentation/faq/releases.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation/faq/releases.rst

Re: [ovs-dev] [PATCH] faq: Update OVS/DPDK version table for OVS 2.15

2021-02-12 Thread Govindharajan, Hariprasad
> -Original Message- > From: dev On Behalf Of Kevin Traynor > Sent: Thursday, February 11, 2021 5:51 PM > To: ovs-dev@openvswitch.org > Subject: Re: [ovs-dev] [PATCH] faq: Update OVS/DPDK version table for OVS > 2.15 > > On 11/02/2021 14:10, hgovindh wrote: > > Indicate that OVS 2.15

Re: [ovs-dev] [PATCH v2] docs: Update for auto load balance threshold parameters.

2021-02-12 Thread Stokes, Ian
> On 2/11/21 8:31 PM, Kevin Traynor wrote: > > Update the docs to remove the previously hardcoded values > > and mention the load and improvement thresholds when > > describing the operation of auto load balance. > > > > Fixes: 62ab5594c20c ("dpif-netdev: Add parameters to configure PMD auto >

Re: [ovs-dev] [PATCH v2] docs: Update for auto load balance threshold parameters.

2021-02-12 Thread Ilya Maximets
On 2/11/21 8:31 PM, Kevin Traynor wrote: > Update the docs to remove the previously hardcoded values > and mention the load and improvement thresholds when > describing the operation of auto load balance. > > Fixes: 62ab5594c20c ("dpif-netdev: Add parameters to configure PMD auto load >

Re: [ovs-dev] [PATCH ovn] Add IGMP_Group to ovn-controller RBAC

2021-02-12 Thread Numan Siddique
On Thu, Feb 11, 2021 at 4:59 PM Frode Nordahl wrote: > > Thank you Pedro, > > We built a test package [0] with this patch and received confirmation > it solved the problem. > > Acked-by: Frode Nordahl Thanks for the patch. I applied this patch to master. Numan > > 0:

Re: [ovs-dev] [PATCH] Fix submodule build when using build directory.

2021-02-12 Thread Numan Siddique
On Fri, Feb 12, 2021 at 1:14 AM Numan Siddique wrote: > > On Thu, Feb 11, 2021 at 11:33 PM Mark Michelson wrote: > > > > The initial addition of OVS as a submodule made the assumption that the > > build is being performed from the OVN source directory. However, some > > devs create a separate