[ovs-dev] [PATCH v9 3/3] conntrack: limit port clash resolution attempts

2022-01-12 Thread wenxu
From: wenxu In case almost or all available ports are taken, clash resolution can take a very long time, resulting in pmd hang in conntrack. This can happen when many to-be-natted hosts connect to same destination:port (e.g. a proxy) and all connections pass the same SNAT. Pick a random offset

[ovs-dev] [PATCH v9 2/3] conntrack: prefer dst port range during unique tuple search

2022-01-12 Thread wenxu
From: wenxu This commit splits the nested loop used to search the unique ports for the reverse tuple. It affects only the dnat action, giving more precedence to the dnat range, similarly to the kernel dp, instead of searching through the default ephemeral source range for each destination port.

[ovs-dev] [PATCH v9 1/3] conntrack: select correct sport range for well-known origin sport

2022-01-12 Thread wenxu
From: wenxu Like the kernel datapath. The sport nat range for well-konwn origin sport should limit in the well-known ports. Signed-off-by: wenxu Acked-by: Paolo Valerio --- lib/conntrack.c | 12 ++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/lib/conntrack.c b/lib/

Re: [ovs-dev] [PATCH] ofproto-dpif-upcall:Fix for OVS route cache re-add

2022-01-12 Thread lic121
>Problem Statement: >OVS flushes and subsequently repopulates its route >cache whenever it receives a netlink notification >about kernel interface change. At the same time the >port addition triggers a revalidation of all >datapath flow cache entries. The revalidation of >egress tunnel flows depend

Re: [ovs-dev] [PATCH v8 3/3] conntrack: limit port clash resolution attempts

2022-01-12 Thread wenxu
From: Paolo Valerio Date: 2022-01-12 18:19:25 To: we...@ucloud.cn,i.maxim...@ovn.org Cc: d...@openvswitch.org Subject: Re: [PATCH v8 3/3] conntrack: limit port clash resolution attempts>Hello wenxu, > >I tested a bit more the patch, and it seems to effectively limit the >number of atte

Re: [ovs-dev] [PATCH v5 2/2] dpif-netdev/mfex: Optimize packet hash and enable autovalidator

2022-01-12 Thread Stokes, Ian
> From: Kumar Amber > > This patch adds error checking of packet hashes to the mfex > autovalidator infrastructure, ensuring that hashes calculated by > optimized mfex implementations is identical to the scalar code. > > This patch avoids calculating the software hash of the packet again > if th

[ovs-dev] [RFC ovn] Add LTS section to release documentation.

2022-01-12 Thread Mark Michelson
OVN LTS releases have a lot of ambiguity, so this is intended to codify LTS support and cadence. Signed-off-by: Mark Michelson --- Documentation/internals/release-process.rst | 28 + 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/Documentation/internals/relea

Re: [ovs-dev] [PATCH v5 8/8] odp-execute: Add ISA implementation of push_vlan action.

2022-01-12 Thread Stokes, Ian
> This commit adds the AVX512 implementation of the push_vlan action. > The implementation here is auto-validated by the miniflow > extract autovalidator, hence its correctness can be easily > tested and verified. > > Signed-off-by: Emma Finn Hi Emma, thanks for the patch. I think given the con

Re: [ovs-dev] [PATCH v5 7/8] odp-execute: Add ISA implementation of pop_vlan action.

2022-01-12 Thread Stokes, Ian
> This commit adds the AVX512 implementation of the pop_vlan action. > The implementation here is auto-validated by the miniflow > extract autovalidator, hence its correctness can be easily > tested and verified. > > Signed-off-by: Emma Finn Hi Emma, some comments below. > --- > lib/odp-execu

Re: [ovs-dev] [PATCH v5 6/8] odp-execute: Add ISA implementation of actions.

2022-01-12 Thread Stokes, Ian
> -Original Message- > From: Finn, Emma > Sent: Wednesday, January 12, 2022 9:43 AM > To: d...@openvswitch.org; Van Haaren, Harry ; > Amber, Kumar ; Stokes, Ian ; > i.maxim...@ovn.org > Cc: Finn, Emma > Subject: [PATCH v5 6/8] odp-execute: Add ISA implementation of actions. > > This c

Re: [ovs-dev] [PATCH v5 4/8] odp-execute: Add command to switch action implementation.

2022-01-12 Thread Stokes, Ian
> This commit adds a new command to allow the user to switch > the active action implementation at runtime. A probe function > is executed before switching the implementation, to ensure > the CPU is capable of running the ISA required. > > Usage: > $ ovs-appctl dpif-netdev/action-impl-set scalar

Re: [ovs-dev] OVS DPDK MFEX Unit Tests Failing

2022-01-12 Thread Ferriter, Cian
> -Original Message- > From: David Marchand > Sent: Wednesday 12 January 2022 17:05 > To: Ferriter, Cian > Cc: Phelan, Michael ; d...@openvswitch.org; Ilya > Maximets > Subject: Re: [ovs-dev] OVS DPDK MFEX Unit Tests Failing > > On Wed, Jan 12, 2022 at 5:54 PM Ferriter, Cian > wrot

Re: [ovs-dev] [PATCH v4 0/9] Actions Infrastructure + Optimizations

2022-01-12 Thread Ilya Maximets
On 1/6/22 14:11, Van Haaren, Harry wrote: >> -Original Message- >> From: Finn, Emma >> Sent: Wednesday, January 5, 2022 4:54 PM >> To: d...@openvswitch.org; Van Haaren, Harry ; >> Amber, Kumar >> Cc: Finn, Emma >> Subject: [PATCH v4 0/9] Actions Infrastructure + Optimizations >> >> --- >

Re: [ovs-dev] OVS DPDK MFEX Unit Tests Failing

2022-01-12 Thread David Marchand
On Wed, Jan 12, 2022 at 5:54 PM Ferriter, Cian wrote: > I tested your fix and it works, but I had to modify the port number from 0 to > 1. If I leave it at 0, the tests still fail. It depends on what DPDK ports get initialised on your system. On mine, I had no pci device bound to vfio-pci (and u

Re: [ovs-dev] OVS DPDK MFEX Unit Tests Failing

2022-01-12 Thread Ferriter, Cian
Hi David, I tested your fix and it works, but I had to modify the port number from 0 to 1. If I leave it at 0, the tests still fail. I put the modifications I made inline below. Perhaps we need to wildcard this number? Thanks, Cian > -Original Message- > From: dev On Behalf Of David

Re: [ovs-dev] OVS DPDK MFEX Unit Tests Failing

2022-01-12 Thread Ilya Maximets
On 1/12/22 17:31, David Marchand wrote: > On Wed, Jan 12, 2022 at 5:17 PM David Marchand > wrote: >> >> On Wed, Jan 12, 2022 at 4:48 PM Phelan, Michael >> wrote: >>> >>> Hi, >>> >>> During internal testing of the AVX-512 CI, a bug was picked up on the OVS >>> master branch which resulted in the

[ovs-dev] OVS DPDK MFEX Unit Tests Failing

2022-01-12 Thread Phelan, Michael
Hi, During internal testing of the AVX-512 CI, a bug was picked up on the OVS master branch which resulted in the MFEX unit tests consistently failing. I believe the bug was introduced by commit d446dcb7e03fc7bd4e3050c83c22233b0a46d364 "system-dpdk: Refactor common logs matching". It looks like

[ovs-dev] [PATCH v1 1/1] datapath-windows: Pickup Ct tuple as CT lookup key in function OvsCtSetupLookupCtx

2022-01-12 Thread Wilson Peng
From: Wilson Peng CT marks which are loaded in non-first commit will be lost in ovs-windows.In linux OVS, the CT mark setting with same flow could be set successfully. Currenlty Ovs-windows will create one new CT with the flowKey(Extracted from the packet itself) If the packet is already done

Re: [ovs-dev] OVS DPDK MFEX Unit Tests Failing

2022-01-12 Thread David Marchand
On Wed, Jan 12, 2022 at 5:17 PM David Marchand wrote: > > On Wed, Jan 12, 2022 at 4:48 PM Phelan, Michael > wrote: > > > > Hi, > > > > During internal testing of the AVX-512 CI, a bug was picked up on the OVS > > master branch which resulted in the MFEX unit tests consistently failing. I > > be

[ovs-dev] [PATCH] dpif-netdev: fix handling of vlan and ipv4 parsing in avx512

2022-01-12 Thread Harry van Haaren
This commit fixes the minimum packet size for the vlan/ipv4/tcp traffic profile, which was previously incorrectly set. This commit also disallows any fragmented IPv4 packets from being matched in the optimized miniflow-extract, avoiding complexity of handling fragmented packets and using scalar fa

Re: [ovs-dev] [PATCH v5 2/2] dpif-netdev/mfex: Optimize packet hash and enable autovalidator

2022-01-12 Thread 0-day Robot
Bleep bloop. Greetings Harry van Haaren, 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: Unexpected sign-offs from developers who are not authors or co-authors or committ

Re: [ovs-dev] [PATCH v4] netdev-linux: Ingress policing to use matchall if basic is not available.

2022-01-12 Thread Ilya Maximets
On 12/4/21 00:06, Mike Pattrick wrote: > Currently ingress policing uses the basic classifier to apply traffic > control filters if hardware offload is not enabled, in which case it > uses matchall. This change changes the behavior to always use matchall, > and fall back onto basic if the kernel is

Re: [ovs-dev] OVS DPDK MFEX Unit Tests Failing

2022-01-12 Thread David Marchand
On Wed, Jan 12, 2022 at 4:48 PM Phelan, Michael wrote: > > Hi, > > During internal testing of the AVX-512 CI, a bug was picked up on the OVS > master branch which resulted in the MFEX unit tests consistently failing. I > believe the bug was introduced by commit > d446dcb7e03fc7bd4e3050c83c22233

[ovs-dev] [PATCH v5 2/2] dpif-netdev/mfex: Optimize packet hash and enable autovalidator

2022-01-12 Thread Harry van Haaren
From: Kumar Amber This patch adds error checking of packet hashes to the mfex autovalidator infrastructure, ensuring that hashes calculated by optimized mfex implementations is identical to the scalar code. This patch avoids calculating the software hash of the packet again if the optimized mini

[ovs-dev] [PATCH v5 0/2] MFEX Hashing Optimizations

2022-01-12 Thread Harry van Haaren
Following from the MFEX Optimizations IPv6 + Hashing patchset, https://patchwork.ozlabs.org/project/openvswitch/list/?series=275590 This patchset introduces the optimization as described at OVS Conference; https://www.openvswitch.org/support/ovscon2021/#T32 https://youtu.be/X_uPybauF3g?list=PLaJlR

[ovs-dev] [PATCH v5 1/2] dpif-netdev/mfex: Add ipv4 profile based hashing

2022-01-12 Thread Harry van Haaren
From: Kumar Amber This commit adds IPv4 profile specific hashing which uses fixed offsets into the packet to improve hashing performance. Signed-off-by: Kumar Amber Signed-off-by: Harry van Haaren Co-authored-by: Harry van Haaren --- v5: - Rename "hash_len" to "key_len" to describe its use

Re: [ovs-dev] [PATCH v5 3/8] odp-execute: Add auto validation function for actions.

2022-01-12 Thread Stokes, Ian
> This commit introduced the auto-validation function which > allows users to compare the batch of packets obtained from > different action implementations against the linear > action implementation. > > The autovalidator function can be triggered at runtime using the > following command: > > $ o

Re: [ovs-dev] [PATCH v1 07/18] python: introduce OpenFlow Flow parsing

2022-01-12 Thread Adrian Moreno
On 12/24/21 15:07, Eelco Chaudron wrote: +class OFPFlowFactory: See my comments on patch 8, where I do think we should get rid of this class, and update the OFPFlow class to take this string at init. Being more OOO it would look like this: def __init__(self, ofp_string, id=None): """Co

Re: [ovs-dev] [PATCH v5 2/8] odp-execute: Add function pointer for pop_vlan action.

2022-01-12 Thread Stokes, Ian
> -Original Message- > From: Finn, Emma > Sent: Wednesday, January 12, 2022 9:43 AM > To: d...@openvswitch.org; Van Haaren, Harry ; > Amber, Kumar ; Stokes, Ian ; > i.maxim...@ovn.org > Cc: Finn, Emma > Subject: [PATCH v5 2/8] odp-execute: Add function pointer for pop_vlan action. > >

Re: [ovs-dev] [PATCH v5 1/8] odp-execute: Add function pointers to odp-execute for different action implementations.

2022-01-12 Thread Stokes, Ian
> -Original Message- > From: Finn, Emma > Sent: Wednesday, January 12, 2022 9:43 AM > To: d...@openvswitch.org; Van Haaren, Harry ; > Amber, Kumar ; Stokes, Ian ; > i.maxim...@ovn.org > Cc: Finn, Emma > Subject: [PATCH v5 1/8] odp-execute: Add function pointers to odp-execute for > dif

Re: [ovs-dev] [PATCH ovn] northd: fix IPv6-PD with northd IP rework

2022-01-12 Thread Numan Siddique
On Wed, Jan 12, 2022 at 8:44 AM Lorenzo Bianconi wrote: > > > On Tue, Jan 11, 2022 at 2:19 PM Lorenzo Bianconi > > wrote: > > > > > > Since commit 4597317f1 ("Introduce incremental processing for northd"), > > > we rely on (partial) IP for ovn-northd. We need to track SB port_binding > > > option

Re: [ovs-dev] [PATCH v2] netdev-dpdk: Refactor the DPDK transmit path.

2022-01-12 Thread Flavio Leitner
Hello Sunil, Marko and Ian. Mike worked to identify the reason for the performance issue reported by you a while ago. He summarized below. I wonder if you can give a try on his patch too and tell us if we are on the right track. Thanks, fbl On Wed, Jan 05, 2022 at 03:01:47PM -0500, Mike Pattri

Re: [ovs-dev] [PATCH ovn] northd: fix IPv6-PD with northd IP rework

2022-01-12 Thread Lorenzo Bianconi
> On Tue, Jan 11, 2022 at 2:19 PM Lorenzo Bianconi > wrote: > > > > Since commit 4597317f1 ("Introduce incremental processing for northd"), > > we rely on (partial) IP for ovn-northd. We need to track SB port_binding > > option column in order to notify the CMS whenever the controller > > receives

[ovs-dev] [PATCH ovn] test: replace dibbler with dhcpd

2022-01-12 Thread Lorenzo Bianconi
Replace dibbler dhcp6 server with dhcpd since the former is no longer maintained. Signed-off-by: Lorenzo Bianconi --- tests/atlocal.in| 4 ++-- tests/system-ovn.at | 34 +++--- 2 files changed, 13 insertions(+), 25 deletions(-) diff --git a/tests/atlocal.in b/te

Re: [ovs-dev] [PATCH v1 05/18] build-aux: generate ofp field decoders

2022-01-12 Thread Adrian Moreno
On 12/17/21 15:37, Eelco Chaudron wrote: On 22 Nov 2021, at 12:22, Adrian Moreno wrote: Based on meta-field information extracted by extract_ofp_fields, autogenerate the right decoder to be used . Signed-off-by: Adrian Moreno --- build-aux/automake.mk| 3 +- build-aux/g

Re: [ovs-dev] [PATCH] dpif-netdev: improve loading of packet data for undersized packets

2022-01-12 Thread Ilya Maximets
On 1/6/22 12:45, Harry van Haaren wrote: > This commit improves handling of packets where the allocated memory > is less than 64 bytes. In the DPDK datapath this never matters, as > an mbuf always pre-allocates enough space, however this can occur in > test environments such as the dummy netdev. T

Re: [ovs-dev] [PATCH v1 04/18] build-aux: split extract-ofp-fields

2022-01-12 Thread Adrian Moreno
On 12/17/21 14:53, Eelco Chaudron wrote: On 22 Nov 2021, at 12:22, Adrian Moreno wrote: In order to be able to reuse the core extaction logic, split the command extaction -> extraction in two parts. The core extraction logic is moved to python/build while the command that writes the dif

Re: [ovs-dev] [PATCH v1 03/18] python: add list parser

2022-01-12 Thread Adrian Moreno
On 12/17/21 14:41, Eelco Chaudron wrote: See some minor comment below. //Eelco On 22 Nov 2021, at 12:22, Adrian Moreno wrote: Some openflow or dpif flows encode their arguments in lists, eg: "some_action(arg1,arg2,arg3)". In order to decode this in a way that can be then stored and queried

Re: [ovs-dev] [PATCH] tests: Add de-serialization check to the json string benchmark.

2022-01-12 Thread Aaron Conole
Ilya Maximets writes: > Since we're testing serialization, it also makes sense to test > the opposite operation. Should be useful in the future for > exploring possible optimizations. > > CMD: $ ./tests/ovstest json-string-benchmark > > Signed-off-by: Ilya Maximets > --- Acked-by: Aaron Conole

Re: [ovs-dev] [PATCH v4] acinclude: Provide better error info when linking fails with DPDK.

2022-01-12 Thread Ilya Maximets
On 1/9/22 10:05, Sunil Pai G wrote: > Currently, on failure to link with DPDK, the configure script provides > an error message to update the PKG_CONFIG_PATH even though the cause of > failure was missing dependencies. Improve the error message to include this > scenario. > > Signed-off-by: Sunil

Re: [ovs-dev] [PATCH 2/2] netdev-dpdk: Expose per rxq/txq basic statistics.

2022-01-12 Thread Ilya Maximets
On 12/14/21 14:33, Kevin Traynor wrote: > On 02/12/2021 21:16, David Marchand wrote: >> When troubleshooting multiqueue setups, having per queue statistics helps >> checking packets repartition in rx and tx queues. >> >> Per queue statistics are exported by most DPDK drivers (with capability >> RTE

Re: [ovs-dev] [ovs-dev v7 2/3] ipf: micro-optimize ipf_ctx_eq

2022-01-12 Thread 贺鹏
Hi, Thanks for the reviewing. Aaron Conole 于2022年1月12日周三 05:37写道: > Peng He writes: > > > by using ipf_list's key instead of first frags' metadata can reduce > > quite a lot of cache access as by the time calling ipf_ctx_eq, ipf_list > > is cache-hot. > > > > Signed-off-by: Peng He > > --- >

Re: [ovs-dev] something is wrong with the ovs-actions man page

2022-01-12 Thread Ilya Maximets
On 1/11/22 23:54, Nick Bouliane wrote: >> BTW, the up-to-date versions of some of these docs are available in >> html form in the documentation: >> https://docs.openvswitch.org/en/latest/ref/ovs-actions.7/ > > oh, thanks ! any plan to continue generate the pdf/txt format for easy > offline readi

Re: [ovs-dev] [PATCH v8 2/3] conntrack: prefer dst port range during unique tuple search

2022-01-12 Thread Paolo Valerio
we...@ucloud.cn writes: > From: wenxu > > Splits the nested loop used to search the unique ports for the > reverse tuple. > It affects only the dnat action, giving more precedence to the dnat > range, similarly to the kernel dp, instead of searching through the > default ephemeral source range fo

Re: [ovs-dev] [PATCH v8 3/3] conntrack: limit port clash resolution attempts

2022-01-12 Thread Paolo Valerio
Hello wenxu, I tested a bit more the patch, and it seems to effectively limit the number of attempts. There is a case with a sufficiently large port range that will always tries the same ports. E.g. (incresing the IPs you can reduce the port range): actions=ct(commit,nat(dst=10.1.1.100-10.1.1.101

[ovs-dev] [PATCH v5 8/8] odp-execute: Add ISA implementation of push_vlan action.

2022-01-12 Thread Emma Finn
This commit adds the AVX512 implementation of the push_vlan action. The implementation here is auto-validated by the miniflow extract autovalidator, hence its correctness can be easily tested and verified. Signed-off-by: Emma Finn --- lib/odp-execute-avx512.c | 62 ++

[ovs-dev] [PATCH v5 7/8] odp-execute: Add ISA implementation of pop_vlan action.

2022-01-12 Thread Emma Finn
This commit adds the AVX512 implementation of the pop_vlan action. The implementation here is auto-validated by the miniflow extract autovalidator, hence its correctness can be easily tested and verified. Signed-off-by: Emma Finn --- lib/odp-execute-avx512.c | 77 +++

[ovs-dev] [PATCH v5 6/8] odp-execute: Add ISA implementation of actions.

2022-01-12 Thread Emma Finn
This commit adds the AVX512 implementation of the action functionality. Usage: $ ovs-appctl dpif-netdev/action-impl-set avx512 Signed-off-by: Emma Finn Acked-by: Harry van Haaren --- Documentation/topics/dpdk/bridge.rst | 25 ++ Documentation/topics/testing.rst | 20 +--- NEW

[ovs-dev] [PATCH v5 5/8] dpif-netdev: Add configure option to enable actions autovalidator at build time.

2022-01-12 Thread Emma Finn
From: Kumar Amber This commit adds a new command to allow the user to enable the actions autovalidator by default at build time thus allowing for running unit test by default. $ ./configure --enable-actions-default-autovalidator Signed-off-by: Kumar Amber Acked-by: Harry van Haaren --- NEWS

[ovs-dev] [PATCH v5 4/8] odp-execute: Add command to switch action implementation.

2022-01-12 Thread Emma Finn
This commit adds a new command to allow the user to switch the active action implementation at runtime. A probe function is executed before switching the implementation, to ensure the CPU is capable of running the ISA required. Usage: $ ovs-appctl dpif-netdev/action-impl-set scalar This commit

[ovs-dev] [PATCH v5 3/8] odp-execute: Add auto validation function for actions.

2022-01-12 Thread Emma Finn
This commit introduced the auto-validation function which allows users to compare the batch of packets obtained from different action implementations against the linear action implementation. The autovalidator function can be triggered at runtime using the following command: $ ovs-appctl dpif-net

[ovs-dev] [PATCH v5 1/8] odp-execute: Add function pointers to odp-execute for different action implementations.

2022-01-12 Thread Emma Finn
This commit introduces the initial infrastructure required to allow different implementations for OvS actions. The patch introduces action function pointers which allows user to switch between different action implementations available. This will allow for more performance and flexibility so the us

[ovs-dev] [PATCH v5 2/8] odp-execute: Add function pointer for pop_vlan action.

2022-01-12 Thread Emma Finn
This commit removes the pop_vlan action from the large switch and creates a separate function for batched processing. A function pointer is also added to call the new batched function for the pop_vlan action. Signed-off-by: Emma Finn Acked-by: Harry van Haaren --- lib/odp-execute-private.c | 19

[ovs-dev] [PATCH v5 0/8] Actions Infrastructure + Optimizations

2022-01-12 Thread Emma Finn
--- v5: - Rebase to master - Minor change to variable names - Added Tags from Harry. --- v4: - Rebase to master - Add ISA implementation of push_vlan action --- v3: - Refactored to fix unit test failures - Removed some sign-off on commits --- v2: - Fix the CI build issues --- This patchset introd