diff mbox series

[ovs-dev] ofproto: Fix statistics of removed flow.

Message ID 20200514183309.64035-1-i.maximets@ovn.org
State Accepted
Delegated to: Ilya Maximets
Headers show
Series [ovs-dev] ofproto: Fix statistics of removed flow. | expand

Commit Message

Ilya Maximets May 14, 2020, 6:33 p.m. UTC
'fr' is a new variable on the stack.  '+=' here adds the real statistics
to a random stack memory.

Fixes: 164413156cf9 ("Add offload packets statistics")
Signed-off-by: Ilya Maximets <i.maximets@ovn.org>
---
 ofproto/ofproto.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Roi Dayan May 14, 2020, 7:43 p.m. UTC | #1
On 2020-05-14 9:33 PM, Ilya Maximets wrote:
> 'fr' is a new variable on the stack.  '+=' here adds the real statistics
> to a random stack memory.
> 
> Fixes: 164413156cf9 ("Add offload packets statistics")
> Signed-off-by: Ilya Maximets <i.maximets@ovn.org>
> ---
>  ofproto/ofproto.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/ofproto/ofproto.c b/ofproto/ofproto.c
> index 0fbd6c380..59f06aa94 100644
> --- a/ofproto/ofproto.c
> +++ b/ofproto/ofproto.c
> @@ -6085,8 +6085,8 @@ ofproto_rule_send_removed(struct rule *rule)
>      fr.hard_timeout = rule->hard_timeout;
>      ovs_mutex_unlock(&rule->mutex);
>      rule->ofproto->ofproto_class->rule_get_stats(rule, &stats, &used);
> -    fr.packet_count += stats.n_packets;
> -    fr.byte_count += stats.n_bytes;
> +    fr.packet_count = stats.n_packets;
> +    fr.byte_count = stats.n_bytes;
>      connmgr_send_flow_removed(connmgr, &fr);
>      ovs_mutex_unlock(&ofproto_mutex);
>  }
> 

Acked-by: Roi Dayan <roid@mellanox.com>
Ilya Maximets May 15, 2020, 6:18 p.m. UTC | #2
On 5/14/20 9:43 PM, Roi Dayan wrote:
> 
> 
> On 2020-05-14 9:33 PM, Ilya Maximets wrote:
>> 'fr' is a new variable on the stack.  '+=' here adds the real statistics
>> to a random stack memory.
>>
>> Fixes: 164413156cf9 ("Add offload packets statistics")
>> Signed-off-by: Ilya Maximets <i.maximets@ovn.org>
>> ---
>>  ofproto/ofproto.c | 4 ++--
>>  1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/ofproto/ofproto.c b/ofproto/ofproto.c
>> index 0fbd6c380..59f06aa94 100644
>> --- a/ofproto/ofproto.c
>> +++ b/ofproto/ofproto.c
>> @@ -6085,8 +6085,8 @@ ofproto_rule_send_removed(struct rule *rule)
>>      fr.hard_timeout = rule->hard_timeout;
>>      ovs_mutex_unlock(&rule->mutex);
>>      rule->ofproto->ofproto_class->rule_get_stats(rule, &stats, &used);
>> -    fr.packet_count += stats.n_packets;
>> -    fr.byte_count += stats.n_bytes;
>> +    fr.packet_count = stats.n_packets;
>> +    fr.byte_count = stats.n_bytes;
>>      connmgr_send_flow_removed(connmgr, &fr);
>>      ovs_mutex_unlock(&ofproto_mutex);
>>  }
>>
> 
> Acked-by: Roi Dayan <roid@mellanox.com>
> 

Thanks!

Applied to master and  branch-2.13.

Best regards, Ilya Maximets.
diff mbox series

Patch

diff --git a/ofproto/ofproto.c b/ofproto/ofproto.c
index 0fbd6c380..59f06aa94 100644
--- a/ofproto/ofproto.c
+++ b/ofproto/ofproto.c
@@ -6085,8 +6085,8 @@  ofproto_rule_send_removed(struct rule *rule)
     fr.hard_timeout = rule->hard_timeout;
     ovs_mutex_unlock(&rule->mutex);
     rule->ofproto->ofproto_class->rule_get_stats(rule, &stats, &used);
-    fr.packet_count += stats.n_packets;
-    fr.byte_count += stats.n_bytes;
+    fr.packet_count = stats.n_packets;
+    fr.byte_count = stats.n_bytes;
     connmgr_send_flow_removed(connmgr, &fr);
     ovs_mutex_unlock(&ofproto_mutex);
 }