[ovs-dev] [PATCH RFC ovn 4/4] ovn-controller: Skip non-local lflows in ovn-controller before parsing.

2021-06-30 Thread Han Zhou
With the help of logical_flow's in_out_port tag, we can skip parsing a big portion of the logical flows in SB DB, which can largely improve ovn-controller's performance whenever a full recompute is required. With a scale test topology of 1000 chassises, 20 LSPs per chassis, 20k lports in total

[ovs-dev] [PATCH RFC ovn 3/4] ovn-northd: Populate in_out_port in logical_flow table's tags.

2021-06-30 Thread Han Zhou
Populate the in_out_port tag for logical switch pipeline flows wherever possible. Signed-off-by: Han Zhou --- northd/ovn-northd.c | 272 +--- 1 file changed, 155 insertions(+), 117 deletions(-) diff --git a/northd/ovn-northd.c b/northd/ovn-northd.c index

[ovs-dev] [PATCH RFC ovn 2/4] ovn-sb: Add tags column to logical_flow table of the SB DB.

2021-06-30 Thread Han Zhou
The column will provide information to help improve efficiency of ovn-controller lflow parsing. Signed-off-by: Han Zhou --- ovn-sb.ovsschema | 7 +-- ovn-sb.xml | 23 +++ 2 files changed, 28 insertions(+), 2 deletions(-) diff --git a/ovn-sb.ovsschema

[ovs-dev] [PATCH RFC ovn 0/4] Avoid parsing non-local lflows with the help of tags in SB.

2021-06-30 Thread Han Zhou
With the help of a new column in Logical_Flow table that stores ingress/egress lport information, ovn-controller can avoid parsing a big portion of the logical flows in SB DB, which can largely improve ovn-controller's performance whenever a full recompute is required. With a scale test topology

[ovs-dev] [PATCH RFC ovn 1/4] ovn-northd.at: Minor improvement for the dp group test case.

2021-06-30 Thread Han Zhou
When counting lsp specific flows, using format "table" for ovn-sbctl output to make sure each record is counted at most once. Signed-off-by: Han Zhou --- tests/ovn-northd.at | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/ovn-northd.at b/tests/ovn-northd.at index

Re: [ovs-dev] [PATCH 1/2] dpdk: Remove default values for socket-mem and limit.

2021-06-30 Thread Michael Santana
On Wed, Jun 30, 2021 at 4:48 PM Rosemarie O'Riorden wrote: > > From: Rosemarie O'Riorden > > This change removes the default values for EAL args socket-mem and > socket-limit. As DPDK supports dynamic memory allocation, there is no > need to allocate a certain amount of memory on start-up, nor

Re: [ovs-dev] [PATCH 2/2] dpdk: Stop configuring socket-limit with the value of socket-mem.

2021-06-30 Thread Michael Santana
On Wed, Jun 30, 2021 at 4:48 PM Rosemarie O'Riorden wrote: > > From: Rosemarie O'Riorden > > This change removes the automatic memory limit on start-up of OVS with > DPDK. As DPDK supports dynamic memory allocation, there is no > need to limit the amount of memory available, if not requested. >

Re: [ovs-dev] [PATCH ovn v9 3/4] northd: Add options to automatically add routes for NATs and LBs.

2021-06-30 Thread 0-day Robot
Bleep bloop. Greetings Mark Michelson, 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 84 characters long (recommended limit is 79) #162 FILE:

Re: [ovs-dev] [PATCH ovn v9 2/4] northd: Add IP routing and ARP resolution flows for NAT/LB addresses.

2021-06-30 Thread 0-day Robot
Bleep bloop. Greetings Mark Michelson, 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: ERROR: Inappropriate bracing around statement #92 FILE: northd/ovn-northd.c:1493: if

[ovs-dev] [PATCH ovn v9 4/4] northd: Flood ARPs to routers for "unreachable" addresses.

2021-06-30 Thread Mark Michelson
Previously, ARP TPAs were filtered down only to "reachable" addresses. Reachable addresses are all router interface addresses, as well as NAT external addresses and load balancer VIPs that are within the subnet handled by a router's port. However, it is possible that in some configurations, CMSes

[ovs-dev] [PATCH ovn v9 2/4] northd: Add IP routing and ARP resolution flows for NAT/LB addresses.

2021-06-30 Thread Mark Michelson
Dealing with NAT and load balancer IPs has been a bit of a pain point. It requires creating static routes if east-west traffic to those addresses is desired. Further, it requires ARPs to be sent between the logical routers in order to create MAC Bindings. This commit seeks to make things easier.

[ovs-dev] [PATCH ovn v9 3/4] northd: Add options to automatically add routes for NATs and LBs.

2021-06-30 Thread Mark Michelson
Load_Balancer and NAT entries have a new option, "add_route" that can be set to automatically add routes to those addresses to neighbor routers, therefore eliminating the need to create static routes. Signed-off-by: Mark Michelson --- northd/ovn-northd.8.xml | 7 - northd/ovn-northd.c

[ovs-dev] [PATCH ovn v9 1/4] northd: Factor peer retrieval into its own function.

2021-06-30 Thread Mark Michelson
The same pattern is repeated several times throughout ovn-northd.c, so this puts it in its own function. This will be used even more in an upcoming commit. Signed-off-by: Mark Michelson --- northd/ovn-northd.c | 70 - 1 file changed, 24 insertions(+),

[ovs-dev] [PATCH ovn v9 0/4] ARP and Floating IP Fixes

2021-06-30 Thread Mark Michelson
This patch series aims to fix issues seen in OpenStack deployments when floating IPs were assigned to routers, and those floating IPs were not part of any subnet configured on that router. This series has gone through several transformations, but this incarnation is a four patch series: Patch 1

Re: [ovs-dev] [PATCH ovn v2] ovn-controller: Fix port group I-P when they contain non-vif ports.

2021-06-30 Thread Han Zhou
On Wed, Jun 30, 2021 at 7:01 AM Dumitru Ceara wrote: > > It's valid that port_groups contain non-vif ports, they can actually > contain any type of logical_switch_port. > > Also, there's no need to allocate a new sset containing the local ports' > names every time the I-P engine processes a

Re: [ovs-dev] [PATCH ovn 1/3] system-ovn.at: fix typo

2021-06-30 Thread Numan Siddique
On Tue, Jun 22, 2021 at 1:17 AM Han Zhou wrote: > > Acked-by: Han Zhou Thanks, I applied this patch. Numan > > On Sat, Jun 19, 2021 at 2:51 AM Mark Gray wrote: > > > Signed-off-by: Mark Gray > > --- > > tests/system-ovn.at | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > >

[ovs-dev] [PATCH 2/2] dpdk: Stop configuring socket-limit with the value of socket-mem.

2021-06-30 Thread Rosemarie O'Riorden
From: Rosemarie O'Riorden This change removes the automatic memory limit on start-up of OVS with DPDK. As DPDK supports dynamic memory allocation, there is no need to limit the amount of memory available, if not requested. Currently, if socket-limit is not configured, it is set to the value of

[ovs-dev] [PATCH 1/2] dpdk: Remove default values for socket-mem and limit.

2021-06-30 Thread Rosemarie O'Riorden
From: Rosemarie O'Riorden This change removes the default values for EAL args socket-mem and socket-limit. As DPDK supports dynamic memory allocation, there is no need to allocate a certain amount of memory on start-up, nor limit the amount of memory available, if not requested. Currently,

[ovs-dev] [PATCH 0/2] Stop configuring '--socket-mem'/'--socket-limit' by default for DPDK if not requested.

2021-06-30 Thread Rosemarie O'Riorden
From: Rosemarie O'Riorden Currently, there is a default value of 1024 for socket-mem if not configured. socket-limit automatically takes on the value of socket-mem unless otherwise specified. With these changes, memory allocation will be dynamically managed by DPDK, meaning that by default, no

Re: [ovs-dev] [v4 11/12] dpif-netdev/mfex: add more AVX512 traffic profiles

2021-06-30 Thread Flavio Leitner
Hi, On Thu, Jun 17, 2021 at 09:57:53PM +0530, Kumar Amber wrote: > From: Harry van Haaren > > This commit adds 3 new traffic profile implementations to the > existing avx512 miniflow extract infrastructure. The profiles added are: > - Ether()/IP()/TCP() > - Ether()/Dot1Q()/IP()/UDP() > -

Re: [ovs-dev] [PATCH net-next] openvswitch: Introduce per-cpu upcall dispatch

2021-06-30 Thread kernel test robot
Hi Mark, Thank you for the patch! Perhaps something to improve: [auto build test WARNING on net-next/master] url: https://github.com/0day-ci/linux/commits/Mark-Gray/openvswitch-Introduce-per-cpu-upcall-dispatch/20210630-175435 base: https://git.kernel.org/pub/scm/linux/kernel/git/davem

Re: [ovs-dev] [PATCH ovn v8 0/6] ARP and Floating IP Fixes

2021-06-30 Thread Numan Siddique
On Thu, Jun 3, 2021 at 2:50 PM Mark Michelson wrote: > > This patch series aims to fix issues seen in OpenStack deployments when > floating IPs were assigned to routers, and those floating IPs were not > part of any subnet configured on that router. > > Originally, this was a two patch series but

Re: [ovs-dev] [v4 11/12] dpif-netdev/mfex: add more AVX512 traffic profiles

2021-06-30 Thread Van Haaren, Harry
> -Original Message- > From: Amber, Kumar > Sent: Wednesday, June 30, 2021 4:10 PM > To: Eelco Chaudron ; Van Haaren, Harry > > Cc: d...@openvswitch.org; i.maxim...@ovn.org; Flavio Leitner > ; > Stokes, Ian > Subject: RE: [ovs-dev] [v4 11/12] dpif-netdev/mfex: add more AVX512 traffic

Re: [ovs-dev] [v4 10/12] dpif-netdev/mfex: Add AVX512 based optimized miniflow extract

2021-06-30 Thread Van Haaren, Harry
> -Original Message- > From: Eelco Chaudron > Sent: Wednesday, June 30, 2021 3:35 PM > To: Van Haaren, Harry > Cc: Amber, Kumar ; d...@openvswitch.org; > i.maxim...@ovn.org; Flavio Leitner ; Stokes, Ian > > Subject: Re: [ovs-dev] [v4 10/12] dpif-netdev/mfex: Add AVX512 based optimized >

Re: [ovs-dev] [PATCH] datapath-windows: Specify external include paths

2021-06-30 Thread alinserdean
Hi Guru, Thank you for letting me know. I backported the change until 2.13. Thank you, Alin. From: Guru Shetty Sent: Saturday, June 26, 2021 1:14 AM To: Alin-Gabriel Serdean Cc: Ilya Maximets ; ovs dev ; Frank Wagner Subject: Re: [ovs-dev] [PATCH] datapath-windows: Specify

[ovs-dev] [PATCH 1/1] match: do not print "igmp" match keyword

2021-06-30 Thread Adrian Moreno
The match keyword "igmp" is not supported in ofp-parse, which means that flow dumps cannot be restored. This patch prints the igmp match in the accepted format (ip,nw_proto=2) and adds a test. Signed-off-by: Adrian Moreno --- lib/match.c| 2 -- tests/ovs-ofctl.at | 2 ++ 2 files

[ovs-dev] [PATCH 0/1] flow dumps containing igmp match cannot be restored

2021-06-30 Thread Adrian Moreno
As discussed in [1], "igmp" is not a special OF header so ofp_parse_protocol() does not accept it. However, it's still being printed by match_format(). This makes flow dump restoration fail if it contains this match, which affects for instance the ovs-save script used by "ovs-ctl restart" to make

Re: [ovs-dev] [v4 12/12] dpif/dpcls: limit count subtable search info logs

2021-06-30 Thread Amber, Kumar
Thanks Eelco sure go ahead :) upgrade will surely raise the pps! > -Original Message- > From: Eelco Chaudron > Sent: Wednesday, June 30, 2021 8:27 PM > To: Amber, Kumar ; Van Haaren, Harry > > Cc: d...@openvswitch.org; i.maxim...@ovn.org; Stokes, Ian > ; Flavio Leitner > Subject: Re:

Re: [ovs-dev] [v4 11/12] dpif-netdev/mfex: add more AVX512 traffic profiles

2021-06-30 Thread Amber, Kumar
Hi Eelco, Pls find my comments inline. > > #define KMASK_ETHER 0x1FFFULL > > +#define KMASK_DT1Q 0x000FULL > > This was messing me up, as this suggests this is a 16-byte mask, but this is > only 8, > so maybe we should indicate it by removing the two leading zeros? > >#define

Re: [ovs-dev] [v4 12/12] dpif/dpcls: limit count subtable search info logs

2021-06-30 Thread Eelco Chaudron
No additional comments on this patch! This concludes my review of v4, looking forward to v5. I will now do some additional tests on my non AVX512 machine. Guess I need to update my Intel NUC to an AVX512 supported one :) //Eelco On 17 Jun 2021, at 18:27, Kumar Amber wrote: > From: Harry van

Re: [ovs-dev] [v4 11/12] dpif-netdev/mfex: add more AVX512 traffic profiles

2021-06-30 Thread Eelco Chaudron
On 17 Jun 2021, at 18:27, Kumar Amber wrote: > From: Harry van Haaren > > This commit adds 3 new traffic profile implementations to the > existing avx512 miniflow extract infrastructure. The profiles added are: > - Ether()/IP()/TCP() > - Ether()/Dot1Q()/IP()/UDP() > -

Re: [ovs-dev] [v4 10/12] dpif-netdev/mfex: Add AVX512 based optimized miniflow extract

2021-06-30 Thread Eelco Chaudron
On 30 Jun 2021, at 15:30, Van Haaren, Harry wrote: >> -Original Message- >> From: Eelco Chaudron >> Sent: Wednesday, June 30, 2021 2:12 PM >> To: Amber, Kumar ; Van Haaren, Harry >> >> Cc: d...@openvswitch.org; i.maxim...@ovn.org; Flavio Leitner >> ; >> Stokes, Ian >> Subject: Re:

Re: [ovs-dev] [PATCH ovn] ovn-controller: Fix port group I-P when they contain non-vif ports.

2021-06-30 Thread Dumitru Ceara
On 6/28/21 8:05 AM, Han Zhou wrote: > On Fri, Jun 25, 2021 at 2:38 PM Numan Siddique wrote: >> >> On Fri, Jun 25, 2021 at 2:53 PM Han Zhou wrote: >>> >>> On Fri, Jun 25, 2021 at 4:50 AM Dumitru Ceara wrote: It's valid that port_groups contain non-vif ports, they can actually

[ovs-dev] [PATCH ovn v2] ovn-controller: Fix port group I-P when they contain non-vif ports.

2021-06-30 Thread Dumitru Ceara
It's valid that port_groups contain non-vif ports, they can actually contain any type of logical_switch_port. Also, there's no need to allocate a new sset containing the local ports' names every time the I-P engine processes a change. We were already maintaining a set of "local_lport_ids".

Re: [ovs-dev] [PATCH ovn v3 2/3] ovn-northd: Add useful stopwatches

2021-06-30 Thread Dumitru Ceara
On 6/30/21 2:49 PM, Mark Gray wrote: > On 24/06/2021 16:33, Dumitru Ceara wrote: >> On 6/18/21 10:52 AM, Mark Gray wrote: >>> For performance measurement, it is useful to understand the >>> length of time required to complete a number of key code paths >>> in ovn-northd.c. Add stopwatches to

Re: [ovs-dev] [PATCH ovn v3 3/3] tests: Add check-perf target

2021-06-30 Thread Dumitru Ceara
On 6/30/21 2:49 PM, Mark Gray wrote: > On 24/06/2021 16:34, Dumitru Ceara wrote: >> On 6/18/21 10:52 AM, Mark Gray wrote: >>> Add a suite of micro-benchmarks to aid a developer in understanding the >>> performance impact of any changes that they are making. They can be used to >>> help to

Re: [ovs-dev] [PATCH ovn] docs: fix git format-patch command for backports

2021-06-30 Thread Ihar Hrachyshka
On Tue, Jun 29, 2021 at 1:18 PM Ben Pfaff wrote: > > On Tue, Jun 29, 2021 at 12:50:54PM -0400, Ihar Hrachyshka wrote: > > On Tue, Jun 29, 2021 at 12:46 PM Ben Pfaff wrote: > > > > > > On Tue, Jun 29, 2021 at 12:24:11PM -0400, Ihar Hrachyshka wrote: > > > > One, HEAD~, not HEAD, should be used to

Re: [ovs-dev] [v4 03/12] dpif-netdev: Add study function to select the best mfex function

2021-06-30 Thread Van Haaren, Harry
> -Original Message- > From: Eelco Chaudron > Sent: Wednesday, June 30, 2021 11:07 AM > To: Van Haaren, Harry > Cc: Flavio Leitner ; Amber, Kumar ; > d...@openvswitch.org; i.maxim...@ovn.org > Subject: Re: [ovs-dev] [v4 03/12] dpif-netdev: Add study function to select > the best > mfex

Re: [ovs-dev] [v4 10/12] dpif-netdev/mfex: Add AVX512 based optimized miniflow extract

2021-06-30 Thread Van Haaren, Harry
> -Original Message- > From: Eelco Chaudron > Sent: Wednesday, June 30, 2021 2:12 PM > To: Amber, Kumar ; Van Haaren, Harry > > Cc: d...@openvswitch.org; i.maxim...@ovn.org; Flavio Leitner > ; > Stokes, Ian > Subject: Re: [ovs-dev] [v4 10/12] dpif-netdev/mfex: Add AVX512 based

[ovs-dev] [PATCH ovn v5 2/2] tests: Add check-perf target

2021-06-30 Thread Mark Gray
Add a suite of micro-benchmarks to aid a developer in understanding the performance impact of any changes that they are making. They can be used to help to understand the relative performance between two test runs on the same test machine, but are not intended to give the absolute performance of

[ovs-dev] [PATCH ovn v5 0/2] tests: Add check-perf target

2021-06-30 Thread Mark Gray
This is a proposal to add some micro-benchmarks to aid developers in benchmarking optimizations to OVN. It starts by adding simple metrics for northd but could be expanded in future patches. Mark Gray (2): ovn-northd: Add useful stopwatches tests: Add check-perf target

[ovs-dev] [PATCH ovn v5 1/2] ovn-northd: Add useful stopwatches

2021-06-30 Thread Mark Gray
For performance measurement, it is useful to understand the length of time required to complete a number of key code paths in ovn-northd.c. Add stopwatches to measure these timings. Signed-off-by: Mark Gray Acked-by: Dumitru Ceara --- Notes: v4: Add common header file for stopwatch names

Re: [ovs-dev] [v4 10/12] dpif-netdev/mfex: Add AVX512 based optimized miniflow extract

2021-06-30 Thread Eelco Chaudron
This patch was an interesting patch to review and being reminded about endianness, and this site, https://software.intel.com/sites/landingpage/IntrinsicsGuide/#text=_mm512_maskz_permutexvar_epi8=4315, got me through it ;) Some comments below... //Eelco On 17 Jun 2021, at 18:27, Kumar Amber

Re: [ovs-dev] [PATCH v2 6/8] ovs-thread: Quiesce when joining pthreads

2021-06-30 Thread Gaëtan Rivet
On Wed, Jun 30, 2021, at 11:09, Ilya Maximets wrote: > On 5/20/21 3:35 PM, Gaetan Rivet wrote: > > Joining pthreads makes the caller quiescent. It should register as such, > > as joined threads may wait on an RCU callback executing before quitting, > > deadlocking the caller. > > Hi, Gaetan. > >

Re: [ovs-dev] [PATCH ovn v4 1/2] ovn-northd: Add useful stopwatches

2021-06-30 Thread 0-day Robot
Bleep bloop. Greetings Mark Gray, 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. build: libtool: link: gcc -std=gnu99 -Wstrict-prototypes -Wall -Wextra -Wno-sign-compare -Wpointer-arith

[ovs-dev] [PATCH ovn v4 2/2] tests: Add check-perf target

2021-06-30 Thread Mark Gray
Add a suite of micro-benchmarks to aid a developer in understanding the performance impact of any changes that they are making. They can be used to help to understand the relative performance between two test runs on the same test machine, but are not intended to give the absolute performance of

[ovs-dev] [PATCH ovn v4 1/2] ovn-northd: Add useful stopwatches

2021-06-30 Thread Mark Gray
For performance measurement, it is useful to understand the length of time required to complete a number of key code paths in ovn-northd.c. Add stopwatches to measure these timings. Signed-off-by: Mark Gray Acked-by: Dumitru Ceara --- Notes: v4: Add common header file for stopwatch names

[ovs-dev] [PATCH ovn v4 0/2] tests: Add check-perf target

2021-06-30 Thread Mark Gray
This is a proposal to add some micro-benchmarks to aid developers in benchmarking optimizations to OVN. It starts by adding simple metrics for northd but could be expanded in future patches. Mark Gray (2): ovn-northd: Add useful stopwatches tests: Add check-perf target

Re: [ovs-dev] [PATCH ovn v3 3/3] tests: Add check-perf target

2021-06-30 Thread Mark Gray
On 24/06/2021 16:34, Dumitru Ceara wrote: > On 6/18/21 10:52 AM, Mark Gray wrote: >> Add a suite of micro-benchmarks to aid a developer in understanding the >> performance impact of any changes that they are making. They can be used to >> help to understand the relative performance between two

Re: [ovs-dev] [PATCH ovn v3 2/3] ovn-northd: Add useful stopwatches

2021-06-30 Thread Mark Gray
On 24/06/2021 16:33, Dumitru Ceara wrote: > On 6/18/21 10:52 AM, Mark Gray wrote: >> For performance measurement, it is useful to understand the >> length of time required to complete a number of key code paths >> in ovn-northd.c. Add stopwatches to measure these timings. >> >> Signed-off-by: Mark

Re: [ovs-dev] [PATCH v2 ovn 0/9] northd: rework ovn-northd lb flow installation

2021-06-30 Thread Lorenzo Bianconi
> On Fri, Jun 18, 2021 at 9:04 AM Lorenzo Bianconi > wrote: > > > > Rework lb flow logic in order to visit first each load_balancer and then > > related datapath during lb flow installation. > > This patch allows to reduce memory footprint and cpu utilization in > > ovn-northd. > > > > Hi

Re: [ovs-dev] [v4 03/12] dpif-netdev: Add study function to select the best mfex function

2021-06-30 Thread Van Haaren, Harry
> -Original Message- > From: Eelco Chaudron > Sent: Wednesday, June 30, 2021 10:52 AM > To: Van Haaren, Harry > Cc: Amber, Kumar ; d...@openvswitch.org; > i.maxim...@ovn.org > Subject: Re: [ovs-dev] [v4 03/12] dpif-netdev: Add study function to select > the best > mfex function > > >

Re: [ovs-dev] [v4 03/12] dpif-netdev: Add study function to select the best mfex function

2021-06-30 Thread Eelco Chaudron
On 30 Jun 2021, at 11:43, Van Haaren, Harry wrote: >> -Original Message- >> From: Flavio Leitner >> Sent: Tuesday, June 29, 2021 7:11 PM >> To: Van Haaren, Harry >> Cc: Eelco Chaudron ; Amber, Kumar >> ; d...@openvswitch.org; i.maxim...@ovn.org >> Subject: Re: [ovs-dev] [v4 03/12]

Re: [ovs-dev] [PATCH 0/3] dpif-netlink: Introduce per-cpu upcall dispatching

2021-06-30 Thread Mark Gray
On 30/06/2021 10:56, Mark Gray wrote: > This series proposes a new method of distributing upcalls > to user space threads attempting to resolve a number of > issues with the current method. > > Mark Gray (3): > ofproto: change type of n_handlers and n_revalidators > dpif-netlink: fix

[ovs-dev] [PATCH 3/3] dpif-netlink: Introduce per-cpu upcall dispatch

2021-06-30 Thread Mark Gray
The Open vSwitch kernel module uses the upcall mechanism to send packets from kernel space to user space when it misses in the kernel space flow table. The upcall sends packets via a Netlink socket. Currently, a Netlink socket is created for every vport. In this way, there is a 1:1 mapping between

[ovs-dev] [PATCH 2/3] dpif-netlink: fix report_loss() message

2021-06-30 Thread Mark Gray
Fixes: 1579cf677fcb ("dpif-linux: Implement the API functions to allow multiple handler threads read upcall.") Signed-off-by: Mark Gray --- Notes: v1 - Reworked based on Flavio's comments: * Added "Fixes" tag lib/dpif-netlink.c | 4 ++-- 1 file changed, 2 insertions(+), 2

[ovs-dev] [PATCH 0/3] dpif-netlink: Introduce per-cpu upcall dispatching

2021-06-30 Thread Mark Gray
This series proposes a new method of distributing upcalls to user space threads attempting to resolve a number of issues with the current method. Mark Gray (3): ofproto: change type of n_handlers and n_revalidators dpif-netlink: fix report_loss() message dpif-netlink: Introduce per-cpu

[ovs-dev] [PATCH 1/3] ofproto: change type of n_handlers and n_revalidators

2021-06-30 Thread Mark Gray
'n_handlers' and 'n_revalidators' are declared as type 'size_t'. However, dpif_handlers_set() requires parameter 'n_handlers' as type 'uint32_t'. This patch fixes this type mismatch. Signed-off-by: Mark Gray --- Notes: v1 - Reworked based on Flavio's comments: * fixed inconsistency

Re: [ovs-dev] [v4 01/12] dpif-netdev: Add command line and function pointer for miniflow extract

2021-06-30 Thread Amber, Kumar
Hi Eelco , Replies inline. > -Original Message- > From: Eelco Chaudron > Sent: Wednesday, June 30, 2021 3:17 PM > To: Amber, Kumar ; Van Haaren, Harry > > Cc: d...@openvswitch.org; i.maxim...@ovn.org; Flavio Leitner > > Subject: Re: [ovs-dev] [v4 01/12] dpif-netdev: Add command line

[ovs-dev] [PATCH net-next] openvswitch: Introduce per-cpu upcall dispatch

2021-06-30 Thread Mark Gray
The Open vSwitch kernel module uses the upcall mechanism to send packets from kernel space to user space when it misses in the kernel space flow table. The upcall sends packets via a Netlink socket. Currently, a Netlink socket is created for every vport. In this way, there is a 1:1 mapping between

Re: [ovs-dev] [v4 03/12] dpif-netdev: Add study function to select the best mfex function

2021-06-30 Thread Eelco Chaudron
On 30 Jun 2021, at 11:32, Van Haaren, Harry wrote: >> -Original Message- >> From: Eelco Chaudron >> Sent: Wednesday, June 30, 2021 10:18 AM >> To: Van Haaren, Harry >> Cc: Amber, Kumar ; d...@openvswitch.org; >> i.maxim...@ovn.org >> Subject: Re: [ovs-dev] [v4 03/12] dpif-netdev: Add

Re: [ovs-dev] [v4 01/12] dpif-netdev: Add command line and function pointer for miniflow extract

2021-06-30 Thread Eelco Chaudron
On 17 Jun 2021, at 18:27, Kumar Amber wrote: > This patch introduces the mfex function pointers which allows > the user to switch between different miniflow extract implementations > which are provided by the OVS based on optimized ISA CPU. > > The user can query for the available minflow

Re: [ovs-dev] [RFC net-next] openvswitch: Introduce per-cpu upcall dispatch

2021-06-30 Thread Mark Gray
On 19/05/2021 22:47, Pravin Shelar wrote: Thanks for the review and sorry for the delay. I will be more responsive to any further changes from this point on. > On Fri, Apr 30, 2021 at 8:33 AM Mark Gray wrote: >> >> The Open vSwitch kernel module uses the upcall mechanism to send >> packets from

Re: [ovs-dev] [RFC 1/3] ofproto: change type of n_handlers and n_revalidators

2021-06-30 Thread Mark Gray
On 28/05/2021 20:50, Flavio Leitner wrote: > On Fri, Apr 30, 2021 at 11:31:27AM -0400, Mark Gray wrote: >> 'n_handlers' and 'n_revalidators' are declared as type 'size_t'. >> However, dpif_handlers_set() requires parameter 'n_handlers' as >> type 'uint32_t'. This patch fixes this type mismatch. >

Re: [ovs-dev] [RFC 2/3] dpif-netlink: fix report_loss() message

2021-06-30 Thread Mark Gray
On 28/05/2021 20:49, Flavio Leitner wrote: > On Fri, Apr 30, 2021 at 11:31:28AM -0400, Mark Gray wrote: >> Signed-off-by: Mark Gray > This looks like a bug fix for this commit: > 1579cf677fcb dpif-linux: Implement the API functions to allow multiple ... > > If you agree, please add the Fixes:

Re: [ovs-dev] [RFC net-next] openvswitch: Introduce per-cpu upcall dispatch

2021-06-30 Thread Mark Gray
On 28/05/2021 20:49, Flavio Leitner wrote: > > Hi Mark, > > I think this patch is going in the right direction but there > are some points that I think we should address. See below. > > On Fri, Apr 30, 2021 at 11:33:25AM -0400, Mark Gray wrote: >> The Open vSwitch kernel module uses the upcall

Re: [ovs-dev] [RFC 3/3] dpif-netlink: Introduce per-cpu upcall dispatch

2021-06-30 Thread Mark Gray
On 08/06/2021 21:07, Flavio Leitner wrote: > > Hi Mark, > > This looks good to me. > > Since the new scheme doesn't allow users to change the number > of handlers, we must update ovs-vswitchd.conf.db(5) as well. I updated this documentation > > Some comments below. > > On Fri, Apr 30, 2021

Re: [ovs-dev] [RFC 0/3] dpif-netlink: Introduce per-cpu upcall dispatching

2021-06-30 Thread Mark Gray
On 12/05/2021 03:11, Flavio Leitner wrote: > The results show that this new patch-set addressed the main > thundering herd issue and the scalability issue I reported > during V10 review. > > Unfortunately I can review the patches only next week. Thanks again for testing and reviewing. Sorry for

Re: [ovs-dev] [v4 03/12] dpif-netdev: Add study function to select the best mfex function

2021-06-30 Thread Van Haaren, Harry
> -Original Message- > From: Flavio Leitner > Sent: Tuesday, June 29, 2021 7:11 PM > To: Van Haaren, Harry > Cc: Eelco Chaudron ; Amber, Kumar > ; d...@openvswitch.org; i.maxim...@ovn.org > Subject: Re: [ovs-dev] [v4 03/12] dpif-netdev: Add study function to select > the best > mfex

Re: [ovs-dev] [v13 06/12] dpif-netdev: Add command to get dpif implementations.

2021-06-30 Thread Ferriter, Cian
Hi Eelco, Thanks for you comment. My reply is inline. Cian > -Original Message- > From: Eelco Chaudron > Sent: Tuesday 29 June 2021 09:25 > To: Ferriter, Cian ; Van Haaren, Harry > > Cc: ovs-dev@openvswitch.org; i.maxim...@ovn.org; Flavio Leitner > > Subject: Re: [ovs-dev] [v13

[ovs-dev] [PATCH v3 ovn 8/9] northd: move build_empty_lb_event_flow in build_lswitch_flows_for_lb

2021-06-30 Thread Lorenzo Bianconi
Introduce build_lswitch_flows_for_lb routine in order to visit first each load_balancer and then related datapath (logical switches) during lb flow installation. This patch allows to reduce memory footprint and cpu utilization in ovn-northd. Signed-off-by: Lorenzo Bianconi ---

[ovs-dev] [PATCH v3 ovn 9/9] northd: move build_lb_rules in build_lswitch_flows_for_lb

2021-06-30 Thread Lorenzo Bianconi
Move stateful lb rules for logical switches in build_lswitch_flows_for_lb routine in order to reduce cpu utilization Signed-off-by: Lorenzo Bianconi --- northd/ovn-northd.c | 42 ++ 1 file changed, 18 insertions(+), 24 deletions(-) diff --git

[ovs-dev] [PATCH v3 ovn 7/9] lb: link logical switches assigned for the same lb

2021-06-30 Thread Lorenzo Bianconi
As it has been already done for logical routers, add logical switches datapath references in ovn_northd_lb data structure. This is a preliminary patch to invert the logic used during the lb flow creation in order to visit lb first and then related datapath. Signed-off-by: Lorenzo Bianconi ---

[ovs-dev] [PATCH v3 ovn 5/9] northd: get rid of add_router_lb_flow

2021-06-30 Thread Lorenzo Bianconi
Remove add_router_lb_flow routine and move leftover lb flow installation code in build_lrouter_snat_flows_for_lb routine Signed-off-by: Lorenzo Bianconi --- northd/ovn-northd.c | 258 1 file changed, 119 insertions(+), 139 deletions(-) diff --git

[ovs-dev] [PATCH v3 ovn 6/9] northd: remove dead code in build_lrouter_nat_defrag_and_lb

2021-06-30 Thread Lorenzo Bianconi
Remove if condition that is never executed in build_lrouter_nat_defrag_and_lb routine Signed-off-by: Lorenzo Bianconi --- northd/ovn-northd.c | 7 --- 1 file changed, 7 deletions(-) diff --git a/northd/ovn-northd.c b/northd/ovn-northd.c index 2e69394b3..d1507d4b5 100644 ---

[ovs-dev] [PATCH v3 ovn 4/9] northd: move lb_{skip, force}_snat code in build_lrouter_snat_flows_for_lb

2021-06-30 Thread Lorenzo Bianconi
Introduce build_lrouter_snat_flows_for_lb routine to configuring lb_{skip,force}_snat flows for each configured load_balancer Signed-off-by: Lorenzo Bianconi --- northd/ovn-northd.c | 205 1 file changed, 152 insertions(+), 53 deletions(-) diff

[ovs-dev] [PATCH v3 ovn 3/9] northd: move build_empty_lb_event_flow in build_lrouter_flows_for_lb

2021-06-30 Thread Lorenzo Bianconi
Introduce build_lrouter_flows_for_lb routine in order to visit first each load_balancer and then related datapath during lb flow installation. This patch allows to reduce memory footprint and cpu utilization in ovn-northd. Signed-off-by: Lorenzo Bianconi --- northd/ovn-northd.c | 109

[ovs-dev] [PATCH v3 ovn 2/9] lib: link logical routers assigned for the same lb

2021-06-30 Thread Lorenzo Bianconi
add logical routers datapath references in ovn_northd_lb data structure. This is a preliminary patch to invert the logic used during the lb flow creation in order to visit lb first and then related datapath. Signed-off-by: Lorenzo Bianconi --- lib/lb.c| 11 +++ lib/lb.h

[ovs-dev] [PATCH v3 ovn 1/9] northd: move snat_type out of vip loop

2021-06-30 Thread Lorenzo Bianconi
Move snat_type out of vip loop in build_lrouter_lb_flows() since there is not vip dependency Signed-off-by: Lorenzo Bianconi --- northd/ovn-northd.c | 14 +- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/northd/ovn-northd.c b/northd/ovn-northd.c index

[ovs-dev] [PATCH v3 ovn 0/9] northd: rework ovn-northd lb flow installation

2021-06-30 Thread Lorenzo Bianconi
Rework lb flow logic in order to visit first each load_balancer and then related datapath during lb flow installation. This patch allows to reduce memory footprint and cpu utilization in ovn-northd. Testing environment: ovn-nbctl lr-list |wc -l 308 ovn-nbctl ls-list |wc -l 615 ovn-nbctl lb-list

Re: [ovs-dev] [v4 03/12] dpif-netdev: Add study function to select the best mfex function

2021-06-30 Thread Van Haaren, Harry
> -Original Message- > From: Eelco Chaudron > Sent: Wednesday, June 30, 2021 10:18 AM > To: Van Haaren, Harry > Cc: Amber, Kumar ; d...@openvswitch.org; > i.maxim...@ovn.org > Subject: Re: [ovs-dev] [v4 03/12] dpif-netdev: Add study function to select > the best > mfex function > > >

Re: [ovs-dev] [v4 07/12] test/sytem-dpdk: Add unit test for mfex autovalidator

2021-06-30 Thread Eelco Chaudron
On 29 Jun 2021, at 20:49, Amber, Kumar wrote: > Hi Flavio, > > Comments Inline. > >> -Original Message- >> From: Flavio Leitner >> Sent: Tuesday, June 29, 2021 11:49 PM >> To: Amber, Kumar >> Cc: Eelco Chaudron ; d...@openvswitch.org; >> i.maxim...@ovn.org >> Subject: Re: [ovs-dev]

Re: [ovs-dev] [v4 03/12] dpif-netdev: Add study function to select the best mfex function

2021-06-30 Thread Eelco Chaudron
On 29 Jun 2021, at 18:32, Van Haaren, Harry wrote: >> -Original Message- >> From: dev On Behalf Of Eelco Chaudron >> Sent: Tuesday, June 29, 2021 1:38 PM >> To: Amber, Kumar >> Cc: d...@openvswitch.org; i.maxim...@ovn.org >> Subject: Re: [ovs-dev] [v4 03/12] dpif-netdev: Add study

Re: [ovs-dev] [PATCH v2 6/8] ovs-thread: Quiesce when joining pthreads

2021-06-30 Thread Ilya Maximets
On 5/20/21 3:35 PM, Gaetan Rivet wrote: > Joining pthreads makes the caller quiescent. It should register as such, > as joined threads may wait on an RCU callback executing before quitting, > deadlocking the caller. Hi, Gaetan. This patch doesn't look right to me. The problem is that users of

Re: [ovs-dev] [v4 02/12] dpif-netdev: Add auto validation function for miniflow extract

2021-06-30 Thread Eelco Chaudron
On 29 Jun 2021, at 18:15, Amber, Kumar wrote: > Hi Eelco , > > Sorry the formatting seems broken on this email thread. > Replies are inlined . Thanks, looking forward to the v5 (hopefully once I finished this version of the series. I’m currently at patch 10 ;) > From: Eelco Chaudron > Sent:

Re: [ovs-dev] [v4 01/12] dpif-netdev: Add command line and function pointer for miniflow extract

2021-06-30 Thread Eelco Chaudron
On 29 Jun 2021, at 17:23, Van Haaren, Harry wrote: >> -Original Message- >> From: Eelco Chaudron >> Sent: Tuesday, June 29, 2021 2:56 PM >> To: Amber, Kumar >> Cc: Van Haaren, Harry ; d...@openvswitch.org; >> i.maxim...@ovn.org; Flavio Leitner >> Subject: Re: [ovs-dev] [v4 01/12]

Re: [ovs-dev] [PATCH ovn] ovs-sandbox: Allow specifying initial contents for NB and SB database.

2021-06-30 Thread Dumitru Ceara
On 6/29/21 8:51 PM, Ben Pfaff wrote: > This makes it easier to test northd behavior with particular database > contents, like the ones that Dumitru posted to the mailing list: > https://mail.openvswitch.org/pipermail/ovs-dev/2021-June/384519.html > > You just do something like this: > make

Re: [ovs-dev] [PATCH v7 1/4] conntrack: handle already natted packets

2021-06-30 Thread Dumitru Ceara
On 6/29/21 6:04 PM, Paolo Valerio wrote: > Dumitru Ceara writes: > >> On 6/25/21 2:01 PM, Paolo Valerio wrote: >>> Dumitru Ceara writes: >>> On 6/21/21 12:06 PM, Paolo Valerio wrote: > when a packet gets dnatted and then recirculated, it could be possible > that it matches another

Re: [ovs-dev] [PATCH v11] ofproto-dpif: APIs and CLI option to add/delete static fdb entry

2021-06-30 Thread Eelco Chaudron
On 29 Jun 2021, at 22:43, Vasu Dasari wrote: > Currently there is an option to add/flush/show ARP/ND neighbor. This covers L3 > side. For L2 side, there is only fdb show command. This patch gives an option > to add/del an fdb entry via ovs-appctl. > > CLI command looks like: > > To add: >