Re: [ovs-dev] [PATCH] Fix redundant datapath set ethernet action with NSH Decap

2021-05-06 Thread Jan Scheurich via dev
Hi Martin, Somehow I didn’t receive this patch email via the ovs-dev mailing list, perhaps one of the many spam filters on the way interfered. Don't know if this response email will be recognized by ovs patchwork. The nsh.at lines are broken wrongly in this email, but they look OK in patchwork

Re: [ovs-dev] [PATCH ovn v4 2/2] northd: Provide the option to not use ct.inv in lflows.

2021-05-06 Thread Han Zhou
On Thu, May 6, 2021 at 7:21 PM Numan Siddique wrote: > > > On Thu, May 6, 2021, 9:17 PM Han Zhou wrote: > >> On Thu, May 6, 2021 at 6:13 PM Numan Siddique wrote: >> >> > >> > >> > On Thu, May 6, 2021, 7:00 PM Han Zhou wrote: >> > >> >> On Thu, May 6, 2021 at 11:41 AM Numan Siddique wrote: >>

Re: [ovs-dev] [PATCH ovn] configure: Report OVS version in the usual Autoconf style.

2021-05-06 Thread Han Zhou
On Thu, May 6, 2021 at 2:17 PM Ben Pfaff wrote: > > Without this patch, configure reports the OVS version like this: > OVS version is $OVSVERSION > > This doesn't match the usual style for messages from configure, so this > patch changes it so that it does, like this: > Checking OVS versio

Re: [ovs-dev] [PATCH v9 ovn] ovn-northd: introduce new allow-stateless ACL verb

2021-05-06 Thread Han Zhou
Hi Ihar, Thanks for the patch, and it's great to see the significant performance improvement! Please see my comments below. On Thu, May 6, 2021 at 7:35 AM Ihar Hrachyshka wrote: > > For allow-stateless ACLs, bypass connection tracking by avoiding > setting ct hints for matching traffic. Avoid se

Re: [ovs-dev] [PATCH ovn v3 27/27] tutorial: Add benchmarking test script to run within sandbox.

2021-05-06 Thread 0-day Robot
Bleep bloop. Greetings Ben Pfaff, 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 has trailing whitespace #48 FILE: tutorial/northd_ddlog_test.sh:8: if ddlog_running;

Re: [ovs-dev] [PATCH ovn v3 26/27] ovn-northd-ddlog: Remove Router.static_routes.

2021-05-06 Thread 0-day Robot
Bleep bloop. Greetings Ben Pfaff, 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 committers: Ben

Re: [ovs-dev] [PATCH ovn v3 25/27] ovn-northd-ddlog: Intern nb::Logical_Switch_Port.

2021-05-06 Thread 0-day Robot
Bleep bloop. Greetings Ben Pfaff, 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 committers: Ben

Re: [ovs-dev] [PATCH ovn v3 24/27] ovn-northd-ddlog: Intern nb::Logical_Router_Port.

2021-05-06 Thread 0-day Robot
Bleep bloop. Greetings Ben Pfaff, 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 committers: Ben

Re: [ovs-dev] [PATCH ovn v3 23/27] ovn-northd-ddlog: Intern selected input relations.

2021-05-06 Thread 0-day Robot
Bleep bloop. Greetings Ben Pfaff, 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 committers: Ben

Re: [ovs-dev] [PATCH ovn v3 22/27] ovn-northd-ddlog: Eliminate redundant dereferences.

2021-05-06 Thread 0-day Robot
Bleep bloop. Greetings Ben Pfaff, 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 committers: Ben

Re: [ovs-dev] [PATCH ovn v3 21/27] ovn-northd-ddlog: Eliminate remaining Ref's.

2021-05-06 Thread 0-day Robot
Bleep bloop. Greetings Ben Pfaff, 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 committers: Ben

Re: [ovs-dev] [PATCH ovn v3 20/27] ovn-northd-ddlog: Remove unused function.

2021-05-06 Thread 0-day Robot
Bleep bloop. Greetings Ben Pfaff, 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 committers: Ben

Re: [ovs-dev] [PATCH ovn v3 19/27] ovn-northd-ddlog: Intern the RouterPort table.

2021-05-06 Thread 0-day Robot
Bleep bloop. Greetings Ben Pfaff, 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 committers: Ben

Re: [ovs-dev] [PATCH ovn v3 18/27] ovn-northd-ddlog: Intern the SwitchPort table.

2021-05-06 Thread 0-day Robot
Bleep bloop. Greetings Ben Pfaff, 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 committers: Ben

Re: [ovs-dev] [PATCH ovn v3 17/27] ovn-northd-ddlog: Remove `ls` field from `Switch`.

2021-05-06 Thread 0-day Robot
Bleep bloop. Greetings Ben Pfaff, 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 committers: Ben

Re: [ovs-dev] [PATCH ovn v3 16/27] ovn-northd-ddlog: Intern the Switch table.

2021-05-06 Thread 0-day Robot
Bleep bloop. Greetings Ben Pfaff, 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 committers: Ben

Re: [ovs-dev] [PATCH ovn v3 15/27] ovn-northd-ddlog: Workaround for slow group_by.

2021-05-06 Thread 0-day Robot
Bleep bloop. Greetings Ben Pfaff, 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 committers: Ben

Re: [ovs-dev] [PATCH ovn v3 14/27] ovn-northd-ddlog: Intern the `Router` table.

2021-05-06 Thread 0-day Robot
Bleep bloop. Greetings Ben Pfaff, 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 committers: Ben

Re: [ovs-dev] [PATCH ovn v3 13/27] ovn-northd-ddlog: Remove `lr` field from `Router`.

2021-05-06 Thread 0-day Robot
Bleep bloop. Greetings Ben Pfaff, 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 committers: Ben

Re: [ovs-dev] [PATCH ovn v3 11/27] ovn-northd-ddlog: Upgrade to ddlog 0.38.

2021-05-06 Thread 0-day Robot
Bleep bloop. Greetings Ben Pfaff, 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 committers: Ben

Re: [ovs-dev] [PATCH ovn v3 09/27] ovn-nbctl: Don't replicate entire database unnecessarily.

2021-05-06 Thread 0-day Robot
Bleep bloop. Greetings Ben Pfaff, 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) #87 FILE: utilities/ovn-nbctl.c:823:

Re: [ovs-dev] [PATCH ovn v3 08/27] ovn-sbctl: Add daemon support.

2021-05-06 Thread 0-day Robot
Bleep bloop. Greetings Ben Pfaff, 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 93 characters long (recommended limit is 79) #677 FILE: utilities/ovn-sbctl.8.xml:

Re: [ovs-dev] [PATCH ovn v3 06/27] ovn-nbctl: Refactor into infrastructure and northbound details.

2021-05-06 Thread 0-day Robot
Bleep bloop. Greetings Ben Pfaff, 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) #254 FILE: utilities/ovn-dbctl.c:214:

Re: [ovs-dev] [PATCH ovn v3 03/27] ovn-nbctl: Improve manpage.

2021-05-06 Thread 0-day Robot
Bleep bloop. Greetings Ben Pfaff, 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 82 characters long (recommended limit is 79) #318 FILE: utilities/ovn-nbctl.8.xml:

[ovs-dev] [PATCH ovn v3 23/27] ovn-northd-ddlog: Intern selected input relations.

2021-05-06 Thread Ben Pfaff
From: Leonid Ryzhyk DDlog 0.38.0 adds the `--intern-table` CLI flag to the `ovsdb2ddlog` compiler to declare input tables coming from OVSDB as `Intern<...>`. This is useful for tables whose records are copied around as a whole and can therefore benefit from interning performance- and memory-wise.

[ovs-dev] [PATCH ovn v3 27/27] tutorial: Add benchmarking test script to run within sandbox.

2021-05-06 Thread Ben Pfaff
This is originally from Numan Siddique. I have adapted it a bit to run faster by using the ovn-nbctl and ovn-sbctl daemons and combining multiple calls into just one. I'm uncertain whether to actually commit this; I need a sign-off from Numan to do so. Signed-off-by: Ben Pfaff CC: Numan Siddiqu

[ovs-dev] [PATCH ovn v3 25/27] ovn-northd-ddlog: Intern nb::Logical_Switch_Port.

2021-05-06 Thread Ben Pfaff
From: Leonid Ryzhyk Use the `--intern-table` switch to intern `Logical_Switch_Port` records, so that they can be copied and compared efficiently by pointer. Signed-off-by: Leonid Ryzhyk Signed-off-by: Ben Pfaff --- northd/helpers.dl| 2 +- northd/lrouter.dl| 4 ++-- northd/lswitch.d

[ovs-dev] [PATCH ovn v3 21/27] ovn-northd-ddlog: Eliminate remaining Ref's.

2021-05-06 Thread Ben Pfaff
From: Leonid Ryzhyk Change all remaining occurrences of `Ref` to `Intern` throughout the DDlog code base. Signed-off-by: Leonid Ryzhyk Signed-off-by: Ben Pfaff --- northd/helpers.dl| 36 +- northd/lrouter.dl| 22 northd/lswitch.dl| 61 +

[ovs-dev] [PATCH ovn v3 24/27] ovn-northd-ddlog: Intern nb::Logical_Router_Port.

2021-05-06 Thread Ben Pfaff
From: Leonid Ryzhyk Use the `--intern-table` switch to intern `Logical_Router_Port` records, so that they can be copied and compared efficiently by pointer. Signed-off-by: Leonid Ryzhyk Signed-off-by: Ben Pfaff --- northd/helpers.dl| 2 +- northd/lrouter.dl| 50 ++

[ovs-dev] [PATCH ovn v3 26/27] ovn-northd-ddlog: Remove Router.static_routes.

2021-05-06 Thread Ben Pfaff
From: Leonid Ryzhyk This is another instance of a performance bug when a change to a router object forces a cascade of changes to relations that reference the object. This time around the problem was caused by the `Router.static_routes` field, which is copied from `nb::Logical_Router`. Luckily,

[ovs-dev] [PATCH ovn v3 17/27] ovn-northd-ddlog: Remove `ls` field from `Switch`.

2021-05-06 Thread Ben Pfaff
From: Leonid Ryzhyk This commit is analogous to 076749c99, but switches instead of routers. `relation Switch` stores the internal representation of a logical switch, consisting of values from the `nb::Logical_Switch` table augmented with some additional fields. We used to do this by copying the

[ovs-dev] [PATCH ovn v3 19/27] ovn-northd-ddlog: Intern the RouterPort table.

2021-05-06 Thread Ben Pfaff
From: Leonid Ryzhyk Change the type of record in the `RouterPort` table from `Ref` to `Intern`. Signed-off-by: Leonid Ryzhyk Signed-off-by: Ben Pfaff --- northd/lrouter.dl| 37 + northd/lswitch.dl| 4 ++-- northd/ovn_northd.dl | 14 +++---

[ovs-dev] [PATCH ovn v3 22/27] ovn-northd-ddlog: Eliminate redundant dereferences.

2021-05-06 Thread Ben Pfaff
From: Leonid Ryzhyk We eliminate an anti-pattern in the use of smart pointers that occurred throughout the DDlog code. Consider relation `A` that contains field `x` wrapped in a DDlog smart pointer (`Intern<>` or `Ref<>`): ``` relation A(x: Intern, ...) ``` Here `T` might be a complex type wit

[ovs-dev] [PATCH ovn v3 20/27] ovn-northd-ddlog: Remove unused function.

2021-05-06 Thread Ben Pfaff
From: Leonid Ryzhyk Signed-off-by: Leonid Ryzhyk Signed-off-by: Ben Pfaff --- northd/lswitch.dl | 1 - 1 file changed, 1 deletion(-) diff --git a/northd/lswitch.dl b/northd/lswitch.dl index 6b2ae37a1608..eeeb968d5d97 100644 --- a/northd/lswitch.dl +++ b/northd/lswitch.dl @@ -23,7 +23,6 @@ imp

[ovs-dev] [PATCH ovn v3 15/27] ovn-northd-ddlog: Workaround for slow group_by.

2021-05-06 Thread Ben Pfaff
From: Leonid Ryzhyk This patch is a workaround for a performance issue in the DDlog compiler. The issue will hopefully be resolved in a future version of DDlog, but for now we need this and possibly a few other similar fixes. Here is one affected rule: ``` sb::Out_Port_Group(._uuid = hash128(s

[ovs-dev] [PATCH ovn v3 14/27] ovn-northd-ddlog: Intern the `Router` table.

2021-05-06 Thread Ben Pfaff
From: Leonid Ryzhyk This is the first in a series of commits that will replace the use of the DDlog's `Ref<>` type with `Intern<>` throughout the OVN code base. `Ref` and `Intern` are the two forms of smart pointers supported by DDlog at the moment. `Ref` is a reference counted pointer. Copying

[ovs-dev] [PATCH ovn v3 18/27] ovn-northd-ddlog: Intern the SwitchPort table.

2021-05-06 Thread Ben Pfaff
From: Leonid Ryzhyk Change the type of record in the `SwitchPort` table from `Ref` to `Intern`. Signed-off-by: Leonid Ryzhyk Signed-off-by: Ben Pfaff --- northd/ipam.dl | 22 +++ northd/lswitch.dl| 64 +++- northd/ovn_northd.dl |

[ovs-dev] [PATCH ovn v3 13/27] ovn-northd-ddlog: Remove `lr` field from `Router`.

2021-05-06 Thread Ben Pfaff
From: Leonid Ryzhyk `relation Router` stores the internal representation of a logical router, consisting of values from the `nb::Logical_Router` table augmented with some additional fields. We used to do this by copying the entire `Logical_Router` record inside `Router`. This proved highly inef

[ovs-dev] [PATCH ovn v3 16/27] ovn-northd-ddlog: Intern the Switch table.

2021-05-06 Thread Ben Pfaff
From: Leonid Ryzhyk Change the type of record in the `Switch` table from `Ref` to `Intern`. Signed-off-by: Leonid Ryzhyk Signed-off-by: Ben Pfaff --- northd/lswitch.dl | 37 + northd/multicast.dl | 10 +- 2 files changed, 26 insertions(+), 21 dele

[ovs-dev] [PATCH ovn v3 06/27] ovn-nbctl: Refactor into infrastructure and northbound details.

2021-05-06 Thread Ben Pfaff
In an upcoming commit, this will allow adding daemon mode to ovn-sbctl without having a lot of duplicated code. Signed-off-by: Ben Pfaff --- utilities/automake.mk |5 +- utilities/ovn-dbctl.c | 1214 utilities/ovn-dbctl.h | 60 ++ utilities/ovn-nbctl.c

[ovs-dev] [PATCH ovn v3 12/27] ovn-northd-ddlog: Preserve NB_Global more carefully.

2021-05-06 Thread Ben Pfaff
Dumitru reported in #openvswitch that ovn-northd-ddlog can discard the setting of NB_Global.options:use_logical_dp_groups at startup. I think that this must be because it seems possible that at startup some of the relations in the Out_NB_Global rule aren't populated yet, and yet there is still a r

[ovs-dev] [PATCH ovn v3 11/27] ovn-northd-ddlog: Upgrade to ddlog 0.38.

2021-05-06 Thread Ben Pfaff
From: Leonid Ryzhyk Upcoming commits will use a new --intern-table option of ovsdb2ddlog, so we need to upgrade to the version of ddlog that has that feature. To do so, we need to adapt the code to language changes in ddlog. This commit does that for a change in 0.37 in which, when iterating ov

[ovs-dev] [PATCH ovn v3 04/27] ovn-nbctl: Recommend ovn-appctl instead of ovs-appctl.

2021-05-06 Thread Ben Pfaff
They do exactly the same thing but ovn-appctl has more ovn in its name. Signed-off-by: Ben Pfaff Suggested-by: Mark Michelson --- utilities/ovn-nbctl.8.xml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/utilities/ovn-nbctl.8.xml b/utilities/ovn-nbctl.8.xml index 39f938

[ovs-dev] [PATCH ovn v3 08/27] ovn-sbctl: Add daemon support.

2021-05-06 Thread Ben Pfaff
Also rewrite the manpage and convert it to XML for consistency with ovn-nbctl, and add tests. Signed-off-by: Ben Pfaff --- NEWS | 4 +- manpages.mk | 17 - tests/ovn-sbctl.at| 76 +++-- utilities/automake.mk | 7 +- utilities/ovn-dbctl.c |

[ovs-dev] [PATCH ovn v3 10/27] tests: Miscellaneous debuggability improvements.

2021-05-06 Thread Ben Pfaff
Signed-off-by: Ben Pfaff --- tests/ovn.at | 51 +++ 1 file changed, 35 insertions(+), 16 deletions(-) diff --git a/tests/ovn.at b/tests/ovn.at index 175cce0049cd..8adaaa9fde64 100644 --- a/tests/ovn.at +++ b/tests/ovn.at @@ -9683,9 +9683,10 @@ wait

[ovs-dev] [PATCH ovn v3 09/27] ovn-nbctl: Don't replicate entire database unnecessarily.

2021-05-06 Thread Ben Pfaff
ovn-nbctl was retrieving a replica of the entire northbound database regardless of what it was asked to do. This was unnecessary, but it was not written to be smart enough to just retrieve what it needed. This commit fixes the problem. It makes "ovn-nbctl init", for example, run instantly on a bi

[ovs-dev] [PATCH ovn v3 07/27] ovn-dbctl: Fix memory leak in client mode.

2021-05-06 Thread Ben Pfaff
This isn't notable, since this commit frees it just before exiting, but it cleans up the Address Sanitizer report. Signed-off-by: Ben Pfaff --- utilities/ovn-dbctl.c | 4 1 file changed, 4 insertions(+) diff --git a/utilities/ovn-dbctl.c b/utilities/ovn-dbctl.c index 28ebc6267066..d815dc5c

[ovs-dev] [PATCH ovn v3 03/27] ovn-nbctl: Improve manpage.

2021-05-06 Thread Ben Pfaff
This rearranges the manpage into a more logical order, documents some options that weren't documented, adds some sections such as Environment and Exit Status that a manpage should have, puts the headings at reasonable levels instead of all at the top level, and adds a little more explanatory text i

[ovs-dev] [PATCH ovn v3 05/27] ovn-nbctl: Daemon mode is no longer experimental.

2021-05-06 Thread Ben Pfaff
Mark says that it was heavily used by ovn-kubernetes for years without any issues. Signed-off-by: Ben Pfaff Suggested-by: Mark Michelson --- NEWS | 1 + utilities/ovn-nbctl.8.xml | 4 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/NEWS b/NEWS index c91bc

[ovs-dev] [PATCH ovn v3 02/27] ovn-nbctl: Fix memory leak in client mode.

2021-05-06 Thread Ben Pfaff
This isn't notable, since this commit frees it just before exiting, but it cleans up the Address Sanitizer report. Signed-off-by: Ben Pfaff --- utilities/ovn-nbctl.c | 4 1 file changed, 4 insertions(+) diff --git a/utilities/ovn-nbctl.c b/utilities/ovn-nbctl.c index 042c210020b8..e3af0be9

[ovs-dev] [PATCH ovn v3 01/27] ovn-northd-ddlog: Fix two memory leaks.

2021-05-06 Thread Ben Pfaff
I get a clean report from Address Sanitizer now. Signed-off-by: Ben Pfaff --- northd/ovn-northd-ddlog.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/northd/ovn-northd-ddlog.c b/northd/ovn-northd-ddlog.c index b7d2c8a5ef8d..ca1ab325448c 100644 --- a/northd/ovn-northd-ddlog.c +++ b/northd

[ovs-dev] [PATCH ovn v3 00/27] ddlog 5x performance improvement

2021-05-06 Thread Ben Pfaff
This series of patches greatly improves the performance of ovn-northd-ddlog with the benchmark added in the final patch. The first three patches improve both the benchmark for both versions of ovn-northd. Here are the timings that I measure in each case. All of them include the benefit of the fi

Re: [ovs-dev] [PATCH ovn v4 2/2] northd: Provide the option to not use ct.inv in lflows.

2021-05-06 Thread Numan Siddique
On Thu, May 6, 2021, 9:17 PM Han Zhou wrote: > On Thu, May 6, 2021 at 6:13 PM Numan Siddique wrote: > > > > > > > On Thu, May 6, 2021, 7:00 PM Han Zhou wrote: > > > >> On Thu, May 6, 2021 at 11:41 AM Numan Siddique wrote: > >> > > >> > On Thu, May 6, 2021 at 2:35 AM Han Zhou wrote: > >> > > >

Re: [ovs-dev] [PATCH v2 09/26] tests: Miscellaneous debuggability improvements.

2021-05-06 Thread Ben Pfaff
On Fri, Apr 16, 2021 at 12:05:55PM -0400, Mark Michelson wrote: > On 4/1/21 7:20 PM, Ben Pfaff wrote: > > Signed-off-by: Ben Pfaff > > --- > > tests/ovn.at | 67 ++-- > > 1 file changed, 49 insertions(+), 18 deletions(-) > > > > diff --git a/test

[ovs-dev] [PATCH ovn v1 1/1] ovn-controller: Ensure br-int is using secure fail-mode

2021-05-06 Thread Flavio Fernandes
By default, OVS bridges use standalone fail-mode, which means it is configured with a single row with the NORMAL action as its OpenFlow table. Upon system reboot, an integration bridge with many ports and such a table could create broadcast storms and duplicate packets. That is why ovn-controller c

Re: [ovs-dev] [PATCH v2 08/26] ovn-sbctl: Add daemon support.

2021-05-06 Thread Ben Pfaff
On Fri, Apr 16, 2021 at 12:05:12PM -0400, Mark Michelson wrote: > On 4/1/21 7:20 PM, Ben Pfaff wrote: > > +static bool > > +check_conflicts(struct ctl_context *ctx, const char *name, char *msg) > > +{ > > +struct sbctl_context *sbctl_ctx = sbctl_context_get(ctx); > > if (shash_find(&sbctl

Re: [ovs-dev] [PATCH ovn v4 2/2] northd: Provide the option to not use ct.inv in lflows.

2021-05-06 Thread Han Zhou
On Thu, May 6, 2021 at 6:13 PM Numan Siddique wrote: > > > On Thu, May 6, 2021, 7:00 PM Han Zhou wrote: > >> On Thu, May 6, 2021 at 11:41 AM Numan Siddique wrote: >> > >> > On Thu, May 6, 2021 at 2:35 AM Han Zhou wrote: >> > > >> > > On Thu, Apr 22, 2021 at 6:25 AM wrote: >> > > > >> > > > Fr

Re: [ovs-dev] [PATCH ovn v4 2/2] northd: Provide the option to not use ct.inv in lflows.

2021-05-06 Thread Numan Siddique
On Thu, May 6, 2021, 7:00 PM Han Zhou wrote: > On Thu, May 6, 2021 at 11:41 AM Numan Siddique wrote: > > > > On Thu, May 6, 2021 at 2:35 AM Han Zhou wrote: > > > > > > On Thu, Apr 22, 2021 at 6:25 AM wrote: > > > > > > > > From: Numan Siddique > > > > > > > > Presently we add 65535 priority l

Re: [ovs-dev] [PATCH v2 00/26] ddlog 5x performance improvement

2021-05-06 Thread Ben Pfaff
On Fri, Apr 16, 2021 at 12:04:57PM -0400, Mark Michelson wrote: > 1) The subject line here didn't include "ovn" so it didn't end up in OVN's > patchwork. I had to find it in the OVS patchwork, where it had been marked > as "Not Applicable". Sorry about that. > 2) There is some overlap in this pat

Re: [ovs-dev] [PATCH ovn v4 2/2] northd: Provide the option to not use ct.inv in lflows.

2021-05-06 Thread Han Zhou
On Thu, May 6, 2021 at 11:41 AM Numan Siddique wrote: > > On Thu, May 6, 2021 at 2:35 AM Han Zhou wrote: > > > > On Thu, Apr 22, 2021 at 6:25 AM wrote: > > > > > > From: Numan Siddique > > > > > > Presently we add 65535 priority lflows in the stages - > > > 'ls_in_acl' and 'ls_out_acl' to drop

Re: [ovs-dev] [PATCH ovn v4] ovn-controller: Fix port group conjunction flow explosion problem.

2021-05-06 Thread Han Zhou
On Thu, May 6, 2021 at 1:18 PM Mark Michelson wrote: > > Thanks, Han! > > Acked-by: Mark Michelson Thanks Mark. I applied it to master branch. I'd also like to backport it to branch-21.03. Do you have any concerns before I do that? I know it is not a bug fix, but it is kind of a blocker for larg

[ovs-dev] [PATCH ovn] configure: Report OVS version in the usual Autoconf style.

2021-05-06 Thread Ben Pfaff
Without this patch, configure reports the OVS version like this: OVS version is $OVSVERSION This doesn't match the usual style for messages from configure, so this patch changes it so that it does, like this: Checking OVS version... $OVSVERSION Signed-off-by: Ben Pfaff --- acinclude.m4

Re: [ovs-dev] [PATCH v2 10/26] ovn-northd-ddlog: Upgrade to ddlog 0.38.

2021-05-06 Thread Ben Pfaff
Thank you, that is a good idea. Here is a patch for it. I will add this to my series as well. -8<--cut here-->8-- From: Ben Pfaff Date: Thu, 6 May 2021 14:10:51 -0700 Subject: [PATCH ovn] configure: Check for correct ddlog version. Signed-off-by

[ovs-dev] [PATCH ovn v2] expr: crush the result of a sorted OR expression.

2021-05-06 Thread Mark Michelson
ACLs and logical router policies leave the user open to crafting creative matches, such as this one: (ip4.dst == 172.27.0.65/32) && ip4.src == $as && ip4.dst != 10.128.0.0/11 Ideally, that final part of the match would just be omitted, but in some CMSes this kind of thing gets generated. If we ze

Re: [ovs-dev] [PATCH ovn v4] ovn-controller: Fix port group conjunction flow explosion problem.

2021-05-06 Thread Mark Michelson
Thanks, Han! Acked-by: Mark Michelson On 5/3/21 9:33 PM, Han Zhou wrote: For an ACL with match: outport == @PG && ip4.src == $PG_AS, given below scale: P: PG size LP: number of local lports D: number of all datapaths (logical switches) LD: number of datapaths that contain local lports With c

[ovs-dev] [PATCH ovn] expr: crush the result of a sorted OR expression.

2021-05-06 Thread Mark Michelson
ACLs and logical router policies leave the user open to crafting creative matches, such as this one: (ip4.dst == 172.27.0.65/32) && ip4.src == $as && ip4.dst != 10.128.0.0/11 Ideally, that final part of the match would just be omitted, but in some CMSes this kind of thing gets generated. If we ze

Re: [ovs-dev] [PATCH ovn v4 2/2] northd: Provide the option to not use ct.inv in lflows.

2021-05-06 Thread Numan Siddique
On Thu, May 6, 2021 at 2:35 AM Han Zhou wrote: > > On Thu, Apr 22, 2021 at 6:25 AM wrote: > > > > From: Numan Siddique > > > > Presently we add 65535 priority lflows in the stages - > > 'ls_in_acl' and 'ls_out_acl' to drop packets which > > match on 'ct.inv'. > > > > This patch provides an optio

[ovs-dev] [PATCH 2/3] tnl-neigh-cache: Include expected array sizes in prototypes.

2021-05-06 Thread Ben Pfaff
GCC 11 warned that the prototypes and the definitions of these functions were different: the prototypes used [], the definitions used [IFNAMSIZ]. This is perfectly valid from a C standards perspective, but it's confusing and providing sizes gives the compiler and the developer a useful hint as to

[ovs-dev] [PATCH 3/3] classifier: Make find_match_wc() prototype and definition match.

2021-05-06 Thread Ben Pfaff
The prototype said *, the definition said [CLS_MAX_TRIES]. GCC 11 complains about this (though it is perfectly valid from a C standards perspective). It would probably be better to make them both use [CLS_MAX_TRIES] but that's only allowed if the struct's definition is visible at the point of the

[ovs-dev] [PATCH 1/3] ofp-group: Use big-enough buffer in ofputil_format_group().

2021-05-06 Thread Ben Pfaff
GCC 11 pointed out that ofputil_group_to_string()'s prototype asks for a buffer with one byte more than supplied. This fixes the problem. This wasn't a buffer overflow because ofputil_group_to_string() honors the buffer size passed in, which was correct. The worst that could happen was truncatin

[ovs-dev] [PATCH 0/3] GCC 11 warning fixes

2021-05-06 Thread Ben Pfaff
Patch 1 fixes a bug. Patches 2 and 3 fix warnings that were not bugs. Ben Pfaff (3): ofp-group: Use big-enough buffer in ofputil_format_group(). tnl-neigh-cache: Include expected array sizes in prototypes. classifier: Make find_match_wc() prototype and definition match. lib/classifier.c

[ovs-dev] Code review request

2021-05-06 Thread Karthik Chandrashekar
Hello, Could I please get a review on this patch https://patchwork.ozlabs.org/project/ovn/patch/20210402210858.56673-1-svc.eng.git-m...@nutanix.com/ ? In the above patch I have addressed the comments from the previous two versions https://patchwork.ozlabs.org/project/ovn/patch/20210325234059.12

Re: [ovs-dev] [PATCH ovn] ofctrl: Don't assert while merging tracked flows.

2021-05-06 Thread Numan Siddique
On Wed, May 5, 2021 at 2:25 AM Han Zhou wrote: > > On Thu, Apr 29, 2021 at 9:25 AM Numan Siddique wrote: > > > > On Wed, Apr 28, 2021 at 3:10 PM Han Zhou wrote: > > > > > > On Wed, Apr 28, 2021 at 3:34 AM Numan Siddique wrote: > > > > > > > > On Wed, Apr 28, 2021 at 3:31 AM Han Zhou wrote: > >

Re: [ovs-dev] [PATCH] mac-learning: Remove obsolete comments about tags.

2021-05-06 Thread Ben Pfaff
This comment-only patch could use a review. On Wed, Apr 14, 2021 at 07:45:04PM -0700, Ben Pfaff wrote: > Commit a14502a7c529 ("classifier: Retire partitions.") in 2015 removed > OVS support for tags for the second time (!), so these comments about > them should be removed too. > > Signed-off-by:

Re: [ovs-dev] [PATCH] ovs-actions: Document normal pipeline.

2021-05-06 Thread Ben Pfaff
This documentation-only patch could use a review. On Wed, Apr 14, 2021 at 08:34:46PM -0700, Ben Pfaff wrote: > Signed-off-by: Ben Pfaff > --- > lib/ovs-actions.xml | 288 +++- > 1 file changed, 286 insertions(+), 2 deletions(-) > > diff --git a/lib/ovs-ac

Re: [ovs-dev] [PATCH] xml2nroff: Fix formatting of action headers in ovs-actions(7) manpage.

2021-05-06 Thread Ben Pfaff
On Fri, Apr 16, 2021 at 12:41:13PM +0200, Timothy Redaelli wrote: > On Wed, 14 Apr 2021 13:40:20 -0700 > Ben Pfaff wrote: > > > The action headings were coming out all smashed together, like > > "Theoutputaction". This fixes them so that they appear correctly, like > > "The output action". > >

[ovs-dev] [PATCH ovn v2] if-status: Add OVS interface status management module.

2021-05-06 Thread Dumitru Ceara
The initial implementation of the notification mechanism that indicates if OVS flows corresponding to a logical switch port have been installed is not resilient enough. It didn't cover the case when transactions to the local OVS DB or to the Southbound fail. In order to deal with that, factor out

[ovs-dev] [PATCH dpdk-latest 6/6] ci: Compile DPDK in non developer mode.

2021-05-06 Thread David Marchand
This new option [1] has been added to remove checks [2][3] that only a DPDK developer cares about. 1: https://git.dpdk.org/dpdk/commit/?id=bc4617433845 2: https://git.dpdk.org/dpdk/commit/?id=d317f7ebd484 3: https://git.dpdk.org/dpdk/commit/?id=720dfda4551e Signed-off-by: David Marchand --- .ci

[ovs-dev] [PATCH dpdk-latest 5/6] netdev-dpdk: Fix build with 21.05.

2021-05-06 Thread David Marchand
PCI_ANY_ID has been prefixed with RTE_ [1]. 1: https://git.dpdk.org/dpdk/commit/?id=4d509afa7bb2 Signed-off-by: David Marchand --- lib/netdev-dpdk.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c index 9d8096668e..e67d27d4e3 100644

[ovs-dev] [PATCH dpdk-latest 3/6] ci: Install python elftools for DPDK 21.02.

2021-05-06 Thread David Marchand
pyelftools is now required to build DPDK [1]. 1: https://git.dpdk.org/dpdk/commit/?id=f0f93a7adfee Signed-off-by: David Marchand --- .ci/linux-prepare.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.ci/linux-prepare.sh b/.ci/linux-prepare.sh index c55125cf78..67c8ecf499

[ovs-dev] [PATCH dpdk-latest 4/6] ci: Update meson requirement for DPDK 21.05.

2021-05-06 Thread David Marchand
A recent change [1] in DPDK bumped requirements on meson to 0.49.2. 1: https://git.dpdk.org/dpdk/commit/?id=8c1053083678 Signed-off-by: David Marchand --- .ci/linux-prepare.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.ci/linux-prepare.sh b/.ci/linux-prepare.sh index 6

[ovs-dev] [PATCH dpdk-latest 2/6] travis: Check compilation with DPDK experimental API.

2021-05-06 Thread David Marchand
Add Travis jobs to check compilation with DPDK experimental API enabled. This will help us catch issues for the day we need one of them. Note: this should not be merged to master, intended for dpdk-latest branch only. Signed-off-by: David Marchand Signed-off-by: Ian Stokes --- .ci/linux-build.

[ovs-dev] [PATCH dpdk-latest 1/6] travis: Switch to dpdk main branch.

2021-05-06 Thread David Marchand
Make this branch point to current main master branch so that we can track API breakage. Note: this should not be merged to master, intended for dpdk-latest branch only. Signed-off-by: David Marchand Acked-by: Ilya Maximets Signed-off-by: Ian Stokes The default branch name in DPDK is changed f

[ovs-dev] [PATCH dpdk-latest 0/6] Rebase and fixes for 21.05.

2021-05-06 Thread David Marchand
Hello Ian, DPDK v21.05-rc2 has been tagged last night, so I spent some time today rebasing the dpdk-latest OVS branch against OVS master branch (commit a019868a6268 ("ofproto/ofproto-dpif-sflow: Check sflow ..."), then fixing build against DPDK. Patch 1: I squashed together the two patches about

Re: [ovs-dev] [PATCH v3 00/28] dpif-netdev: Parallel offload processing

2021-05-06 Thread Finn, Emma
> -Original Message- > From: dev On Behalf Of Gaetan Rivet > Sent: Sunday 25 April 2021 12:55 > To: ovs-dev@openvswitch.org > Subject: [ovs-dev] [PATCH v3 00/28] dpif-netdev: Parallel offload processing > > This patch series aims to improve the performance of the management of > hw-off

[ovs-dev] [PATCH v9 ovn] ovn-northd: introduce new allow-stateless ACL verb

2021-05-06 Thread Ihar Hrachyshka
For allow-stateless ACLs, bypass connection tracking by avoiding setting ct hints for matching traffic. Avoid sending all traffic to ct when a stateful ACL is present. === Reusing an existing 'allow' verb for stateless matching would have its drawbacks, specifically, when it comes to backwards in

[ovs-dev] [PATCH ovn] northd: Support flow offloading for logical switches with no ACLs.

2021-05-06 Thread numans
From: Numan Siddique Some smart NICs can't offload datapath flows matching on conntrack fields. If a deployment desires to make use of such smart NICs then it cannot configure ACLs on the logical switches. If suppose a logical switch S1 has no ACLs configured and a logical switch S2 has ACLs co

[ovs-dev] [PATCH] raft: Transfer leadership before creating snapshots.

2021-05-06 Thread Ilya Maximets
With a big database writing snapshot could take a lot of time, for example, on one of the systems compaction of 300MB database takes about 10 seconds to complete. For the clustered database, 40% of this time takes conversion of the database to the file transaction json format, the rest of time is

[ovs-dev] [PATCH] cirrus: Look up existing versions of python dependencies.

2021-05-06 Thread Ilya Maximets
FreeBSD sometimes changes the base version of python3 that is used for packages. This affects package names. For example, currently CI is broken, because there is no more py37- versions of sphinx and openssl available, only py38- ones: pkg: No packages available to install matching 'py37-opens

[ovs-dev] [PATCH v2] lib: Introduce netlink-devlink library

2021-05-06 Thread Frode Nordahl
The devlink interface was introduced [0] in the Linux 4.6 time frame and has since gained traction among multiple hardware vendors. The devlink-port [1] and devlink-info[2] interfaces are particularly useful for managing NICs connected to multiple distinct CPUs such as SmartNICs. In such a topolo