On 1 Mar 2021, at 22:04, Flavio Leitner wrote:
On Wed, Sep 02, 2020 at 12:12:44PM +0200, Eelco Chaudron wrote:
This patch adds a general way of viewing/configuring datapath
cache sizes. With an implementation for the netlink interface.
I see you added support to multiple cache levels. Does
Removed the RFC keyword from this patchset, as the OVS kernel
patches have been approved.
- 9bf24f594c6a net: openvswitch: make masks cache size configurable
- 9d2f627b7ec9 net: openvswitch: add masks cache hit counter
Signed-off-by: Eelco Chaudron
v2: Fixing review comments from Flavio
Eelc
This patch adds cache usage statistics to the output:
$ ovs-dpctl show
system@ovs-system:
lookups: hit:24 missed:71 lost:0
flows: 0
masks: hit:334 total:0 hit/pkt:3.52
cache: hit:4 hit rate:4.2105%
port 0: ovs-system (internal)
port 1: genev_sys_6081 (geneve: packet_type=ptap)
port 2
This patch adds a general way of viewing/configuring datapath
cache sizes. With an implementation for the netlink interface.
The ovs-dpctl/ovs-appctl show commands will display the
current cache sizes configured:
ovs-dpctl show
system@ovs-system:
lookups: hit:25 missed:63 lost:0
flows: 0
ma
On 3/3/21 4:49 AM, xiangxia.m@gmail.com wrote:
> From: Tonghao Zhang
>
> v3:
> * split path1 to #1, #2, #4
> * update testcase in every patch.
> * improve testcase
>
> v2:
> * change the testcase.
>
> v1:
> * split patches from:
> http://patchwork.ozlabs.org/project/openvswitch/patch/158824
Hi Gaetan,
On 2/10/21 3:57 PM, Gaetan Rivet wrote:
> Add a new operation for flow API providers to
> deinitializes when the API is disassociated from a netdev.
>
> Signed-off-by: Gaetan Rivet
> Reviewed-by: Eli Britstein
> ---
> lib/netdev-offload-provider.h | 3 +++
> lib/netdev-offload.c
Add offload support for ct_state rpl and inv flags.
For example:
ovs-ofctl del-flows br-ovs
ovs-ofctl add-flow br-ovs arp,actions=normal
ovs-ofctl add-flow br-ovs "table=0, ip,ct_state=-trk actions=ct(table=1,zone=5)"
ovs-ofctl add-flow br-ovs "table=1, ip,ct_state=+trk+new actions=ct(zone=5,
com
Signed-off-by: Paul Blakey
Acked-by: Roi Dayan
---
lib/netdev-offload-tc.c | 30 ++
1 file changed, 30 insertions(+)
diff --git a/lib/netdev-offload-tc.c b/lib/netdev-offload-tc.c
index 8940409..4dfa408 100644
--- a/lib/netdev-offload-tc.c
+++ b/lib/netdev-offload-tc
Upstream kernel now rejects unsupported ct_state flags.
Earlier kernels, ignored it but still echoed back the requested ct_state,
if ct_state was supported. ct_state initial support had trk, new, est,
and rel flags.
If kernel echos back ct_state, assume support for trk, new, est, and
rel. If kerne
Add TCA_FLOWER_KEY_CT_FLAGS_REPLY, and TCA_FLOWER_KEY_CT_FLAGS_INVALID.
Signed-off-by: Paul Blakey
Acked-by: Roi Dayan
---
acinclude.m4| 6 +++---
include/linux/pkt_cls.h | 5 -
2 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/acinclude.m4 b/acinclude.m4
index 4356
On Wed, Mar 3, 2021, at 12:02, Maxime Coquelin wrote:
> Hi Gaetan,
>
> On 2/10/21 3:57 PM, Gaetan Rivet wrote:
> > Add a new operation for flow API providers to
> > deinitializes when the API is disassociated from a netdev.
> >
> > Signed-off-by: Gaetan Rivet
> > Reviewed-by: Eli Britstein
> >
On 3/3/21 1:41 PM, Gaëtan Rivet wrote:
> On Wed, Mar 3, 2021, at 12:02, Maxime Coquelin wrote:
>> Hi Gaetan,
>>
>> On 2/10/21 3:57 PM, Gaetan Rivet wrote:
>>> Add a new operation for flow API providers to
>>> deinitializes when the API is disassociated from a netdev.
>>>
>>> Signed-off-by: Gaetan
On Tue, Mar 2, 2021 at 7:35 PM Numan Siddique wrote:
>
> On Thu, Feb 18, 2021 at 2:21 PM Frode Nordahl
> wrote:
> >
> > From: Numan Siddique
> >
> > when ovn-ctl run_(nb_sb)_ovsdb is called, the ovsdb-server is started
> > without
> > passing --detach and --monoitor and the process is exec'd.
>
Hi,
On Wed, Mar 03, 2021 at 02:15:35PM +0200, Paul Blakey wrote:
> Upstream kernel now rejects unsupported ct_state flags.
> Earlier kernels, ignored it but still echoed back the requested ct_state,
> if ct_state was supported. ct_state initial support had trk, new, est,
> and rel flags.
>
> If k
Removed the RFC keyword from this patchset, as the OVS kernel
patches have been approved.
- 9bf24f594c6a net: openvswitch: make masks cache size configurable
- 9d2f627b7ec9 net: openvswitch: add masks cache hit counter
Signed-off-by: Eelco Chaudron
v2: Fixing review comments from Flavio
v3: R
This patch adds cache usage statistics to the output:
$ ovs-dpctl show
system@ovs-system:
lookups: hit:24 missed:71 lost:0
flows: 0
masks: hit:334 total:0 hit/pkt:3.52
cache: hit:4 hit rate:4.2105%
port 0: ovs-system (internal)
port 1: genev_sys_6081 (geneve: packet_type=ptap)
port 2
Bleep bloop. Greetings Eelco Chaudron, I am a robot and I have tried out your
patch.
Thanks for your contribution.
I encountered some error that I wasn't expecting. See the details below.
git-am:
error: sha1 information is lacking or useless (lib/dpctl.c).
error: could not build fake ancestor
This patch adds a general way of viewing/configuring datapath
cache sizes. With an implementation for the netlink interface.
The ovs-dpctl/ovs-appctl show commands will display the
current cache sizes configured:
ovs-dpctl show
system@ovs-system:
lookups: hit:25 missed:63 lost:0
flows: 0
ma
The Python IDL notification mechanism was sending a notification
for each processed update in a transaction as it was processed.
This causes isseues with multi-row change that contain references
to each other.
For example, if a Logical_Router_Port is created along with a
Gateway_Chassis, and the L
From: Tonghao Zhang
If user don't set the meter "burst_size", when creating them. OvS
will set "brust_size" to "rate", and there will be a double "rate"
as burst rate. For example:
$ ovs-ofctl -O OpenFlow13 add-meter br0 'meter=1 pktps stats bands=type=drop
rate=100'
The rate expected is 1
The first patch of the series makes the ovsdb-idl tests more future
proof by trying to ensure more predictable output from test-ovsdb.
The second patch of the series fixes a problem with the IDL change
tracking code for deleted records which was causing OVN to crash due to
strong reference fields
IDL tests need predictable output from test-ovsdb.
This used to be done by first sorting the output of test-ovsdb and then
applying uuidfilt to predictably translate UUIDs. This was not
reliable enough in case test-ovsdb processes two or more insert/delete
operations in the same iteration because
Considering two DB rows, 'a' from table A and 'b' from table B (with
column 'ref_a' a reference to table A):
a = {A._uuid=}
b = {B._uuid=, B.ref_a=}
Assuming both records are present in the IDL client's in-memory view of
the database, depending whether row 'b' is also deleted in the same
transacti
On 3/2/21 1:48 PM, Dumitru Ceara wrote:
On 3/2/21 1:44 PM, Dumitru Ceara wrote:
The first patch of the series makes the ovsdb-idl tests more future
proof by trying to ensure more predictable output from test-ovsdb.
The second patch of the series fixes a problem with the IDL change
tracking code
From: Tonghao Zhang
If user don't set the meter "burst_size", when creating them. OvS
will set "brust_size" to "rate", and there will be a double "rate"
as burst rate. For example:
$ ovs-ofctl -O OpenFlow13 add-meter br0 'meter=1 pktps stats bands=type=drop
rate=100'
The rate expected is 1
From: Tonghao Zhang
For now, the meter of the userspace datapath, don't include
the bucket burst size to total buckets. This patch includes it now.
$ ovs-ofctl -O OpenFlow13 add-meter br0 'meter=1 pktps burst stats
bands=type=drop rate=1 burst_size=2000'
OvS linux kernel module do that in
From: Tonghao Zhang
When setting the meter rate to 4.3+Gbps, there is an overflow, the
meters don't work as expected.
$ ovs-ofctl -O OpenFlow13 add-meter br-int "meter=1 kbps stats bands=type=drop
rate=4294968"
It was overflow when we set the rate to 4294968, because "burst_size" in
the ofputi
From: Numan Siddique
There were few typos because of which lflows related to
router option lb_force_snat_ip were not generated correctly.
This patch fixes it.
Fixes: 0e77b3bcbfe("ovn-northd-ddlog: New implementation of ovn-northd based on
ddlog.")
CC: Ben Pfaff
Signed-off-by: Numan Siddique
From: Numan Siddique
The commit c6e21a23bd8 which supported the option 'lb_force_snat_ip=router_ip'
on a gateway router, missed out on
- updating the flows in 'lr_in_dnat' to set 'flags.force_snat_for_lb = 1'.
- removing the flow to drop if ip.dst == router port IP in 'lr_in_ip_input'
sta
On Tue, Mar 2, 2021 at 1:38 PM Numan Siddique wrote:
>
> On Tue, Feb 2, 2021 at 10:09 AM Ihar Hrachyshka wrote:
> >
> > NB: For now, the patch is for discussion only, pending performance
> > measurements.
> >
> > For allow ACLs, bypass connection tracking by avoiding setting ct hints
> > for matc
From: Ankur Sharma
By default, OVN support only one distributed gateway
port (we will call it l3dgw port for further reference)
per logical router. While a single l3dgw port suffices
for most of the North South connectivity, however there
are requirements where a logical router could be connected
Hi Terry,
Thanks for the patch, comments below.
On 3/3/21 9:24 AM, Terry Wilson wrote:
The Python IDL notification mechanism was sending a notification
for each processed update in a transaction as it was processed.
This causes isseues with multi-row change that contain references
to each other
From: Tonghao Zhang
The way that "burst_size" was used as total buckets is
very strange. If user set the "burst_size" too smaller while
"rate" larger, that may affect the meter normal work.
This patch refactor the buckets calculation, and start
with a full buckets.
Signed-off-by: Tonghao Zhang
On Wed, Mar 3, 2021 at 1:47 PM Brian Haley wrote:
>
> Hi Terry,
>
> Thanks for the patch, comments below.
>
> On 3/3/21 9:24 AM, Terry Wilson wrote:
> > The Python IDL notification mechanism was sending a notification
> > for each processed update in a transaction as it was processed.
> > This cau
From: Tonghao Zhang
v3:
* split path1 to #1, #2, #4
* update testcase in every patch.
* improve testcase
v2:
* change the testcase.
v1:
* split patches from:
http://patchwork.ozlabs.org/project/openvswitch/patch/1588244439-58766-2-git-send-email-xiangxia.m@gmail.com/
http://patchwork.ozlabs
For allow ACLs, bypass connection tracking by avoiding setting ct
hints for matching traffic. Avoid sending all traffic to ct when a
stateful ACL is present. Before the patch, this unnecessarily hit
performance when mixed ACL action types were used for the same
datapath.
===
For performance measu
On Wed, Mar 03, 2021 at 02:53:22PM +0100, Eelco Chaudron wrote:
> This patch adds a general way of viewing/configuring datapath
> cache sizes. With an implementation for the netlink interface.
>
> The ovs-dpctl/ovs-appctl show commands will display the
> current cache sizes configured:
>
> ovs-dp
On Wed, Mar 03, 2021 at 02:52:33PM +0100, Eelco Chaudron wrote:
> This patch adds cache usage statistics to the output:
>
> $ ovs-dpctl show
> system@ovs-system:
> lookups: hit:24 missed:71 lost:0
> flows: 0
> masks: hit:334 total:0 hit/pkt:3.52
> cache: hit:4 hit rate:4.2105%
nit: maybe
The Python IDL notification mechanism was sending a notification
for each processed update in a transaction as it was processed.
This causes isseues with multi-row change that contain references
to each other.
For example, if a Logical_Router_Port is created along with a
Gateway_Chassis, and the L
From: Tonghao Zhang
When setting the meter rate to 4.3+Gbps, there is an overflow, the
meters don't work as expected.
$ ovs-ofctl -O OpenFlow13 add-meter br-int "meter=1 kbps stats bands=type=drop
rate=4294968"
It was overflow when we set the rate to 4294968, because "burst_size" in
the ofputi
References: <20210303183240.220701-1-svc.eng.git-pa...@nutanix.com>
Bleep bloop. Greetings svc.eng.git-pa...@nutanix.com, 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:
WARNIN
Acked-by: Flavio Fernandes
LGTM! Only one nit in the commit message.
Testing changes in Openstack Zuul:
https://review.opendev.org/c/openstack/neutron/+/778595
> On Mar 3, 2021, at 4:49 PM, Terry Wilson wrote:
>
> The Python IDL notification mechanism was sending a notification
> for each
From: Ankur Sharma
By default, OVN support only one distributed gateway
port (we will call it l3dgw port for further reference)
per logical router. While a single l3dgw port suffices
for most of the North South connectivity, however there
are requirements where a logical router could be connected
References: <20210304011709.221041-1-svc.eng.git-pa...@nutanix.com>
Bleep bloop. Greetings svc.eng.git-pa...@nutanix.com, 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:
WARNIN
On 3/3/21 3:18 PM, Terry Wilson wrote:
On Wed, Mar 3, 2021 at 1:47 PM Brian Haley wrote:
Hi Terry,
Thanks for the patch, comments below.
On 3/3/21 9:24 AM, Terry Wilson wrote:
The Python IDL notification mechanism was sending a notification
for each processed update in a transaction as it w
Hi Leonid and Mihai (and ovs-dev).
I've been working on profiling ovn-northd-ddlog this week. I've made my
current work available in my ovs-reviews repo in branch ddlog22, e.g.
in the web interface:
https://github.com/blp/ovs-reviews/tree/ddlog22
When I run the northd_ddlog_test.sh scrip
The first commit here is an improvement to the tests. It is not
ddlog specific:
tests: Improve synchronization and debuggability.
The next commit is an improvement to ovs-sandbox for
ovn-northd-ddlog:
ovs-sandbox: Make it possible to disable recording ddlog input.
The next several commits im
While debugging ovn-northd-ddlog, I found a few more tests that either
didn't have enough synchronization points (via "ovn-nbctl sync" or
waiting for ports to come up) or that just were hard to debug because
they didn't dump the flow table in a useful way. This improves them.
Signed-off-by: Ben P
The recording is useful for debugging and reproducing runs, but it
does cost CPU time, so with this option it can be disabled.
Signed-off-by: Ben Pfaff
---
tutorial/ovs-sandbox | 7 ++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/tutorial/ovs-sandbox b/tutorial/ovs-sandbox
i
DDlog supports a couple different forms of functions. You can write
is_some(expr) or expr.is_some(), for example. The latter is usually
easier to understand, especially in bigger expressions. It was
introduced later so it's not consistently used in ovn-northd-ddlog.
This commit switches to the o
These functions were introduced before the object-like invocation
form was added to DDlog. It's usually easier to read the object-like
form, so this changes the functions to this form and updates all the
callers.
It seemed to me that map_get_int_def_limit() was more general if we
just introduced
DDlog takes a literalist view of joins, executing them in the order that
are written without attempting much in the way of reordering or
optimization. The FirstHopLogicalRouter rule as written here joined
LogicalRouterPort with LogicalSwitchPort without using any join key,
and then later eliminate
Until now, whether a logical flow stage was for a logical router or
switch, whether it was ingress or egress, and what particular stage it
was were each separate attributes. It was possible to create an
invalid stage, e.g. a "logical router" stage that was actually present
only in logical switches
DDlog can apply a larger batch of updates more efficiently than a series
of smaller ones. Until now, ovn-northd-ddlog has always applied updates
one-by-one. This commit changes it so that if multiple updates are
received in a batch, it applies all of them within a single ddlog
transaction.
Signe
This should really go into upstream ddlog, but it's OK here for
the moment.
Signed-off-by: Ben Pfaff
---
northd/automake.mk | 4 +-
northd/bitwise.dl | 272 +
northd/bitwise.rs | 133 ++
northd/ovn.dl | 5 +-
northd/ovn.r
I found that this slightly increased performance when there are lots
of routers, probably because there's less data copying.
Signed-off-by: Ben Pfaff
---
northd/lrouter.dl | 11 ---
1 file changed, 4 insertions(+), 7 deletions(-)
diff --git a/northd/lrouter.dl b/northd/lrouter.dl
index
DDlog has support for memory and CPU profiling. This commit adds
commands for enabling CPU profiling (memory profiling is always enabled)
and dumping out the profile.
Signed-off-by: Ben Pfaff
---
northd/ovn-northd-ddlog.c | 40 ++-
northd/ovn-northd.8.xml |
All of these were defined as opaque "extern" types in the ddlog code.
I have found that they are easier to work with and understand if
the ddlog code can look into their implementations. This commit
re-defines them in terms of proper ddlog types. It also renames
many of the functions that operate
58 matches
Mail list logo