I assume someone else will pull this in as part of the patch set, so:
Acked-by: Justin Pettit
Ilya, let me know if you'd like me to merge it, though.
--Justin
> On Nov 4, 2022, at 6:06 AM, Roi Dayan wrote:
>
> The assignment of the features pointer is not doing
> anything and can be
From: Numan Siddique
Updates to NB address sets and NB port groups are handled
incrementally for syncing the SB address sets. This patch
doesn't support syncing the SB Address sets for the router
load balancer vips incrementally, instead a full recompute is
triggered for any changes to NB load
From: Numan Siddique
A sub-engine node 'en_address_set_sync' is added with-in the
'en_sb_sync' node to sync the Address_Set table in the
SB database. To start with, it falls back to full recompute
all the time. Upcoming patch will add the incremental processing
support to sync the SB
I've rerun the test 150 in my VM. it runs successfully.
Looks like this is a flaky uint test.
Peng He 于2022年11月4日周五 17:05写道:
> I've rerun the test 150 in my VM. it runs successfully.
> Looks like this is a flaky uint test.
>
> 于2022年11月4日周五 16:24写道:
>
>> Test-Label: intel-ovs-compilation
>>
Bleep bloop. Greetings Dumitru Ceara, 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
#314 FILE: northd/template-var.h:36:
Bleep bloop. Greetings Dumitru Ceara, 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
#1187 FILE: lib/objdep.h:52:
HMAP_FOR_EACH
On 11/4/22 22:45, Han Zhou wrote:
> On Wed, Nov 2, 2022 at 7:46 AM Dumitru Ceara wrote:
>>
>> On 11/2/22 15:35, Ales Musil wrote:
>>> To prevent some jobs not running after CI scripts updates
>>> use numbers instead of the test flags. This still allows us
>>> to use parallelization, but without
Bleep bloop. Greetings Dumitru Ceara, 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
#314 FILE: northd/template-var.h:36:
Bleep bloop. Greetings Dumitru Ceara, 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
#1187 FILE: lib/objdep.h:52:
HMAP_FOR_EACH
In a sandbox run:
$ ./ovn-lb-benchmark.sh
to simulate an ovn-k8s-like topology with N nodes, VIPS NodePort services
applied to all nodes. Each service has BACKENDS backends.
If USE_TEMPLATES is "yes" then the configuration will be optimized to use
Chassis_Template_Vars. Otherwise it will
Allow the CMS to configure template LBs. The following configurations are
supported:
- VIPs of the form: ^vip_variable[:^port_variable|:port]
- Backends of the form:
^backendip_variable1[:^port_variable1|:port],^backendip_variable2[:^port_variable2|:port]
OR
Expand SB.Template_Var records in two stages:
1. first expand them to local values in match/action strings
2. then reparse the expanded strings
For the case when a lflow references a Chassis_Template_Var
also track references (similar to the ones maintained for
multicast groups, address sets,
Propagate the contents of the NB table to the Southbound.
Signed-off-by: Dumitru Ceara
---
Note:
- ovn-trace doesn't support template variables (yet).
V2:
- Fixed TEMPLATE_VAR_TABLE_INITIALIZER definition so that GCC doesn't
complain anymore.
- Addressed Han's comments:
- Rename tables to
This makes it easier to have an overview of what the code does and at the
same time it allows multiple users to define and manage
"resource <-> object" dependencies.
Acked-by: Han Zhou
Signed-off-by: Dumitru Ceara
---
V2:
- Addressed Mark's comments:
- Fixed typos in comments in objdep.h.
-
Sometimes network components are compute node-specific. Sometimes such
components are replicated, almost identically, for multiple nodes
in the cluster.
One such example is the case of Kubernetes NodePort services which
translate (in the ovn-kubernetes case) to Load_Balancer
objects being
On 11/4/22 23:06, Dumitru Ceara wrote:
> Sometimes network components are compute node-specific. Sometimes such
> components are replicated, almost identically, for multiple nodes
> in the cluster.
>
> One such example is the case of Kubernetes NodePort services which
> translate (in the
Allow the CMS to configure template LBs. The following configurations are
supported:
- VIPs of the form: ^vip_variable[:^port_variable|:port]
- Backends of the form:
^backendip_variable1[:^port_variable1|:port],^backendip_variable2[:^port_variable2|:port]
OR
In a sandbox run:
$ ./ovn-lb-benchmark.sh
to simulate an ovn-k8s-like topology with N nodes, VIPS NodePort services
applied to all nodes. Each service has BACKENDS backends.
If USE_TEMPLATES is "yes" then the configuration will be optimized to use
Chassis_Template_Vars. Otherwise it will
Expand SB.Template_Var records in two stages:
1. first expand them to local values in match/action strings
2. then reparse the expanded strings
For the case when a lflow references a Chassis_Template_Var
also track references (similar to the ones maintained for
multicast groups, address sets,
Propagate the contents of the NB table to the Southbound.
Signed-off-by: Dumitru Ceara
---
Note:
- ovn-trace doesn't support template variables (yet).
V2:
- Fixed TEMPLATE_VAR_TABLE_INITIALIZER definition so that GCC doesn't
complain anymore.
- Addressed Han's comments:
- Rename tables to
This makes it easier to have an overview of what the code does and at the
same time it allows multiple users to define and manage
"resource <-> object" dependencies.
Acked-by: Han Zhou
Signed-off-by: Dumitru Ceara
---
V2:
- Addressed Mark's comments:
- Fixed typos in comments in objdep.h.
-
Sometimes network components are compute node-specific. Sometimes such
components are replicated, almost identically, for multiple nodes
in the cluster.
One such example is the case of Kubernetes NodePort services which
translate (in the ovn-kubernetes case) to Load_Balancer
objects being
Currently, things like the number of handler and revalidator threads are
calculated based on the number of available CPUs. However, this number
is considered static and only calculated once, hence ignoring events
such as cpus being hotplugged, switched on/off or affinity mask
changing.
On the
On 11/4/22 21:47, Mike Pattrick wrote:
On Fri, Nov 4, 2022 at 11:45 AM Adrian Moreno wrote:
Currently, things like the number of handler and revalidator threads are
calculated based on the number of available CPUs. However, this number
is considered static and only calculated once, hence
On Wed, Nov 2, 2022 at 7:46 AM Dumitru Ceara wrote:
>
> On 11/2/22 15:35, Ales Musil wrote:
> > To prevent some jobs not running after CI scripts updates
> > use numbers instead of the test flags. This still allows us
> > to use parallelization, but without worrying about skipping
> > some tests
On Fri, Nov 4, 2022 at 10:22 AM Ilya Maximets wrote:
>
> On 11/2/22 05:09, Han Zhou wrote:
> > When a row is deleted, if the row has weak references to other rows, the
> > weak reference nodes attached to the destination rows (through
> > weak->dst_node hmap) are not destroyed.
> >
> > Deleting
On Fri, Nov 4, 2022 at 11:45 AM Adrian Moreno wrote:
>
> Currently, things like the number of handler and revalidator threads are
> calculated based on the number of available CPUs. However, this number
> is considered static and only calculated once, hence ignoring events
> such as cpus being
Bleep bloop. Greetings Abhiram R N, 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 lacks whitespace around operator
#2593 FILE: utilities/ovn-nbctl.c:275:
Mirror creation just creates the mirror. The lsp-attach-mirror
triggers the sequence to create Mirror in OVS DB on compute node.
OVS already supports Port Mirroring.
Note: This is targeted to mirror to destinations anywhere outside the
cluster where the analyser resides and it need not be an OVN
On 11/2/22 05:09, Han Zhou wrote:
> When a row is deleted, if the row has weak references to other rows, the
> weak reference nodes attached to the destination rows (through
> weak->dst_node hmap) are not destroyed.
>
> Deleting weak references is properly handled when a row is modified. The
>
Bleep bloop. Greetings Adrian Moreno, 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 spacing around cast
#77 FILE: controller/ovn-controller.c:3200:
On 11/1/22 18:08, Numan Siddique wrote:
On Mon, Oct 17, 2022 at 9:15 AM Adrian Moreno wrote:
By default, traffic that doesn't match any configured flow will be dropped.
But having that behavior implicit makes those drops more difficult to
visualize.
Make default drops explicit both as
Two new options are added to NB_Global table that enable drop
sampling by specifying the collector_set_id and the obs_domain_id of
the sample actions added to all drop flows.
For drops coming from an lflow, the sample has the following fields:
- obs_domain_id (32-bit): obs_domain_id << 8 |
By default, traffic that doesn't match any configured flow will be dropped.
But having that behavior implicit makes those drops more difficult to
visualize.
Make default drops explicit both as default logical flows and as default
openflow flows (e.g: for physical tables).
Signed-off-by: Adrian
sample ovn action encodes into the OFPACT_SAMPLE ovs action.
OVN action allows the following parameters:
- obs_domain_id: 8-bit integer that identifies the sampling application.
This value will be combined with the datapath's tunnel_id to form the
final observation_domain_id that will be
Very often when troubleshooting networking issues in an OVN cluster one
would like to know if any packet (or a specific one) is being dropped by
OVN.
Currently, this cannot be known because of two main reasons:
1 - Implicit drops: Some tables do not have a default action
(priority=0, match=1).
Currently, things like the number of handler and revalidator threads are
calculated based on the number of available CPUs. However, this number
is considered static and only calculated once, hence ignoring events
such as cpus being hotplugged, switched on/off or affinity mask
changing.
On the
Some macros for rculist have no users and there are no unit tests
specific to that library as well, so broken code wasn't spotted
while updating to multi-variable iterators.
Fixing multiple problems like missing commas, parenthesis, incorrect
variable and macro names.
Fixes: d293965d7b06
On Fri, Nov 4, 2022 at 2:57 PM Mark Michelson wrote:
> Hi Ales,
>
Hi Mark,
thank you for the review.
>
> On 10/20/22 10:14, Ales Musil wrote:
> > To avoid make it easier to add flow to this stage refactor
> > the function, this has also the benefit that we should
> > see fewer allocations due
Hi Ales,
On 10/20/22 10:14, Ales Musil wrote:
To avoid make it easier to add flow to this stage refactor
the function, this has also the benefit that we should
see fewer allocations due to rearrange how we create flows
and how do we manipulate with match string.
This commit message was kind
Issue:
The src-port for UDP is based on RSS hash in the packet metadata.
In case of packets coming from VM it will be 5-tuple, if available,
otherwise just IP addresses.If the VM fragments a large IP packet
and sends the fragments to ovs, only the first fragment will contain
the L4 header.
On 11/4/22 13:58, Hemanth Aramadaka via dev wrote:
> Issue:
>
> The src-port for UDP is based on RSS hash in the packet metadata.
> In case of packets coming from VM it will be 5-tuple, if available,
> otherwise just IP addresses.If the VM fragments a large IP packet
> and sends the fragments to
On 11/4/22 14:03, Hemanth Aramadaka wrote:
> Hi ,
>
> Thanks for the review and comments. I have addressed the comments and raised
> the review request again.
>
> Ran these tests (tunnel_push_pop - packet_out and tunnel_push_pop -
> packet_out debug_slow ). I am attaching the test results
Introduce the capability to apply QoS rules for logical switch ports
claimed by ovn-controller. Rely on shash instead of sset for
egress_ifaces.
Reported-at: https://bugzilla.redhat.com/show_bug.cgi?id=2129742
Signed-off-by: Lorenzo Bianconi
---
controller/binding.c| 78
The assignment of the features pointer is not doing
anything and can be removed.
CC: Justin Pettit
Signed-off-by: Roi Dayan
---
Notes:
v3:
- fix get meter features commit to just remove redundant null assignment.
v2:
- move memset from wrapper call
lib/dpif-netlink.c | 1
CID 550702 (#1 of 1): Dereference null return value (NULL_RETURNS)
7. dereference: Dereferencing a pointer that might be NULL ex_type when calling
nl_attr_get_u16.
Signed-off-by: Roi Dayan
---
lib/tc.c | 4
1 file changed, 4 insertions(+)
diff --git a/lib/tc.c b/lib/tc.c
index
Fix coverity big parameter passed by value
CID 549858 (#1 of 1): Big parameter passed by value (PASS_BY_VALUE)
pass_by_value: Passing parameter metadata of type struct tun_metadata (size 272
bytes) by value,
which exceeds the medium threshold of 256 bytes
Signed-off-by: Roi Dayan
---
lib/tc.c
Hi,
The following are fixes to small issues found with coverity tool.
Thanks,
Roi
Roi Dayan (3):
tc: Pass tun_metadata by reference
tc: Fix coverity dereference null return value
dpif-netlink: Remove redundant null assignment
lib/dpif-netlink.c | 1 -
lib/tc.c | 24
Hi ,
Thanks for the review and comments. I have addressed the comments and raised
the review request again.
Ran these tests (tunnel_push_pop - packet_out and tunnel_push_pop - packet_out
debug_slow ). I am attaching the test results as well here.
R620-10-CSSCI-5:/home/sdn/zarahem/ovs #
On 04/11/2022 0:48, Justin Pettit wrote:
>
>> On Nov 3, 2022, at 3:38 PM, Ilya Maximets wrote:
>>
>> On 11/3/22 09:47, Roi Dayan wrote:
>>>
>>> diff --git a/lib/dpif-netlink.c b/lib/dpif-netlink.c
>>> index a620a6ec52dd..2bdd2137af36 100644
>>> --- a/lib/dpif-netlink.c
>>> +++
Issue:
The src-port for UDP is based on RSS hash in the packet metadata.
In case of packets coming from VM it will be 5-tuple, if available,
otherwise just IP addresses.If the VM fragments a large IP packet
and sends the fragments to ovs, only the first fragment will contain
the L4 header.
Bleep bloop. Greetings Felix Hüttner, 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: Author Felix Hüttner needs to sign off.
WARNING: Unexpected sign-offs from developers
Bleep bloop. Greetings Felix Hüttner, 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: Author Felix Hüttner needs to sign off.
WARNING: Unexpected sign-offs from developers
Bleep bloop. Greetings Felix Hüttner, 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: Author Felix Hüttner needs to sign off.
WARNING: Unexpected sign-offs from developers
Bleep bloop. Greetings Felix Hüttner, 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: Author Felix Hüttner needs to sign off.
WARNING: Unexpected sign-offs from developers
Bleep bloop. Greetings Ales Musil, 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:
Bleep bloop. Greetings Ales Musil, 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:
Bleep bloop. Greetings Ales Musil, 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)
#128 FILE: ovn-nb.xml:166:
Bleep bloop. Greetings Ales Musil, 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: Comment with 'xxx' marker
#99 FILE: northd/inc-proc-northd.c:222:
/* XXX: The
previously garps/rarps were only sent for NAT IPs if these had an
ipv4 address attached. For lsp's on gateway routers that do not have
an ipv4 address assigned (e.g. if they are ipv6 only) no rarps where
send out.
This causes traffic outages when changing the priority of a gateway
chassis as the
Previously graceful rarps sent from ovn-controller were handled as
normal packets and flooded to other routers. As the other routers should
already have that information, we can skip flooding (just like it is done
for GARPs already) and thereby mitigate ovs refusing to send the packet
because of
in order to easily add future ipv6 test cases the common `ovn_attach`
function should also support ipv6 addresses.
Acked-by: Numan Siddique
Signed-off-by: Felix Huettner
---
tests/ovn-macros.at | 11 ---
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git a/tests/ovn-macros.at
We need to be able to handle rarp fields in order to ensure we can
handle rarp messages we send ourselves.
This will be used by the next patch in the series.
Acked-by: Numan Siddique
Signed-off-by: Felix Huettner
---
lib/logical-fields.c | 8
lib/ovn-util.c | 2 +-
ovn-sb.xml
previously garps/rarps where only sent for "external" lsp's if these
had an ipv4 address attached. For lsp's on gateway routers that do
not have an ipv4 address assigned (e.g. if they are ipv6 only) no
rarps were send out.
This causes traffic outages when changing the priority of a gateway
We shouldn't run the MAC binding aging if the waker did not
expire. This wouldn't cause any issue if the bulk removal limit
is not configured. When the limit is configured and hit there
will be some MAC bindings expired, just waiting for the
bulk removal delay. If something wakes up the aging run
Reported-at: https://bugzilla.redhat.com/2084668
Signed-off-by: Ales Musil
Acked-by: Dumitru Ceara
Signed-off-by: Mark Michelson
---
northd/mac-binding-aging.c | 2 +-
ovn-nb.xml | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/northd/mac-binding-aging.c
It can happen that northd and SB DB are updated before ovn-controller
in that case the new MAC binding would be added with timestamp=0.
In combination with enabled MAC binding aging, the affected rows
would be deleted over and over until the controller is upgraded.
To prevent the before mentioned
The struct ovn_datapath could not be used outside the northd.c
move it to northd.h that it can be used by other .c files later on.
Reported-at: https://bugzilla.redhat.com/2084668
Acked-by: Dumitru Ceara
Acked-by: Mark Michelson
Acked-by: Han Zhou
Signed-off-by: Ales Musil
---
Add MAC binding aging mechanism, that utilizes
the timestamp column of MAC_Binding table.
When the MAC binding exceeds the threshold it is
removed from SB DB, this is postponed only in case
we receive update ARP with update to MAC address.
The threshold is configurable via option
Add configuration option into NB global table
called "mac_binding_removal_limit" defaulting to 0.
This option allows to limit number of MAC bindings
that can be removed by the aging mechanism in a single
transaction. The 0 means that the mechanism is disabled.
If the limit is reached next removal
Add helper source file for creating index
over MAC binding table.
Reported-at: https://bugzilla.redhat.com/2084668
Acked-by: Dumitru Ceara
Acked-by: Mark Michelson
Acked-by: Han Zhou
Signed-off-by: Ales Musil
---
controller/ovn-controller.c | 8 +++-
lib/automake.mk | 2 ++
The new timestamp column in MAC_Binding is
populated with current time whenever the row is
created or the MAC address is updated.
This can be utilized by MAC binding aging mechanism,
when we can check if enough time has passed since the
creation/update.
Reported-at:
Bleep bloop. Greetings Ales Musil, 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 89 characters long (recommended limit is 79)
#108 FILE:
Bleep bloop. Greetings Ales Musil, 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:
Bleep bloop. Greetings Ales Musil, 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:
Bleep bloop. Greetings Ales Musil, 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)
#128 FILE: ovn-nb.xml:166:
Bleep bloop. Greetings Ales Musil, 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: Comment with 'xxx' marker
#99 FILE: northd/inc-proc-northd.c:227:
/* XXX: The
Bleep bloop. Greetings Ales Musil, 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: Failed to merge in the changes.
hint: Use 'git am --show-current-patch=diff' to see the
In order to allow realted traffic use the
new action ct_commit_nat, which ensures that
the traffic is commited and NATted. In combination
with match on ct.rel it allows the related traffic
to go through with correct NAT being applied.
Reported-at: https://bugzilla.redhat.com/2126083
Add action called ct_commit_nat, that performs
NAT while committing the connection. This is
useful for related traffic on which we need
to perform NAT, mainly ICMP. We need to
commit due to design decision of OvS[0]:
"Connections identified as rel are separate from
the originating connection and
The related traffic wasn't correctly forwarded
through the LB, the main issue was that the
traffic was not NATted. This series allows
the NAT to be applied and the traffic should
arrive with correct addresses.
---
v2: Add e2e test case.
Ales Musil (2):
actions: Add new action called
We shouldn't run the MAC binding aging if the waker did not
expire. This wouldn't cause any issue if the bulk removal limit
is not configured. When the limit is configured and hit there
will be some MAC bindings expired, just waiting for the
bulk removal delay. If something wakes up the aging run
Reported-at: https://bugzilla.redhat.com/2084668
Signed-off-by: Ales Musil
Acked-by: Dumitru Ceara
Signed-off-by: Mark Michelson
---
northd/mac-binding-aging.c | 2 +-
ovn-nb.xml | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/northd/mac-binding-aging.c
It can happen that northd and SB DB are updated before ovn-controller
in that case the new MAC binding would be added with timestamp=0.
In combination with enabled MAC binding aging, the affected rows
would be deleted over and over until the controller is upgraded.
To prevent the before mentioned
Add MAC binding aging mechanism, that utilizes
the timestamp column of MAC_Binding table.
When the MAC binding exceeds the threshold it is
removed from SB DB, this is postponed only in case
we receive update ARP with update to MAC address.
The threshold is configurable via option
Add configuration option into NB global table
called "mac_binding_removal_limit" defaulting to 0.
This option allows to limit number of MAC bindings
that can be removed by the aging mechanism in a single
transaction. The 0 means that the mechanism is disabled.
If the limit is reached next removal
The new timestamp column in MAC_Binding is
populated with current time whenever the row is
created or the MAC address is updated.
This can be utilized by MAC binding aging mechanism,
when we can check if enough time has passed since the
creation/update.
Reported-at:
The struct ovn_datapath could not be used outside the northd.c
move it to northd.h that it can be used by other .c files later on.
Reported-at: https://bugzilla.redhat.com/2084668
Acked-by: Dumitru Ceara
Acked-by: Mark Michelson
Acked-by: Han Zhou
Signed-off-by: Ales Musil
---
Add helper source file for creating index
over MAC binding table.
Reported-at: https://bugzilla.redhat.com/2084668
Acked-by: Dumitru Ceara
Acked-by: Mark Michelson
Acked-by: Han Zhou
Signed-off-by: Ales Musil
---
controller/ovn-controller.c | 8 +++-
lib/automake.mk | 2 ++
Oh no it removed the branch-22.06. Sorry for the noise.
On Fri, Nov 4, 2022 at 8:57 AM Ales Musil wrote:
> The new timestamp column in MAC_Binding is
> populated with current time whenever the row is
> created or the MAC address is updated.
> This can be utilized by MAC binding aging mechanism,
Reported-at: https://bugzilla.redhat.com/2084668
Signed-off-by: Ales Musil
Acked-by: Dumitru Ceara
Signed-off-by: Mark Michelson
---
northd/mac-binding-aging.c | 2 +-
ovn-nb.xml | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/northd/mac-binding-aging.c
We shouldn't run the MAC binding aging if the waker did not
expire. This wouldn't cause any issue if the bulk removal limit
is not configured. When the limit is configured and hit there
will be some MAC bindings expired, just waiting for the
bulk removal delay. If something wakes up the aging run
It can happen that northd and SB DB are updated before ovn-controller
in that case the new MAC binding would be added with timestamp=0.
In combination with enabled MAC binding aging, the affected rows
would be deleted over and over until the controller is upgraded.
To prevent the before mentioned
The struct ovn_datapath could not be used outside the northd.c
move it to northd.h that it can be used by other .c files later on.
Reported-at: https://bugzilla.redhat.com/2084668
Acked-by: Dumitru Ceara
Acked-by: Mark Michelson
Acked-by: Han Zhou
Signed-off-by: Ales Musil
---
Add MAC binding aging mechanism, that utilizes
the timestamp column of MAC_Binding table.
When the MAC binding exceeds the threshold it is
removed from SB DB, this is postponed only in case
we receive update ARP with update to MAC address.
The threshold is configurable via option
Add configuration option into NB global table
called "mac_binding_removal_limit" defaulting to 0.
This option allows to limit number of MAC bindings
that can be removed by the aging mechanism in a single
transaction. The 0 means that the mechanism is disabled.
If the limit is reached next removal
The new timestamp column in MAC_Binding is
populated with current time whenever the row is
created or the MAC address is updated.
This can be utilized by MAC binding aging mechanism,
when we can check if enough time has passed since the
creation/update.
Reported-at:
Add helper source file for creating index
over MAC binding table.
Reported-at: https://bugzilla.redhat.com/2084668
Acked-by: Dumitru Ceara
Acked-by: Mark Michelson
Acked-by: Han Zhou
Signed-off-by: Ales Musil
---
controller/ovn-controller.c | 8 +++-
lib/automake.mk | 2 ++
The tail of the struct dp_netdev_flow contains a whole netdev_flow_key
struct.
We need to first minus the size of netdev_flow_key then add back
the real size of this netdev_flow_key.
Signed-off-by: Peng He
---
lib/dpif-netdev.c | 6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff
>From the commit 25070e045e, bundle option can be used with OpenFlow 1.3
Signed-off-by: yangchang
Acked-by: Mike Pattrick
---
utilities/ovs-ofctl.8.in | 10 +-
utilities/ovs-save | 6 +++---
2 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/utilities/ovs-ofctl.8.in
100 matches
Mail list logo