mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-26 10:49:33 +00:00
net/mlx5: Update last-use statistics for flow rules
Set lastuse statistic, when number of packets is changed compared to
last query. This was wrongly dropped when bulk counter reading was added.
Fixes: a351a1b03b
('net/mlx5: Introduce bulk reading of flow counters')
Signed-off-by: Amir Vadai <amirva@mellanox.com>
Reported-by: Paul Blakey <paulb@mellanox.com>
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
2c0f8ce1b5
commit
6c3b4f9086
1 changed files with 10 additions and 1 deletions
|
@ -126,12 +126,21 @@ static struct rb_node *mlx5_fc_stats_query(struct mlx5_core_dev *dev,
|
|||
for (node = &first->node; node; node = rb_next(node)) {
|
||||
struct mlx5_fc *counter = rb_entry(node, struct mlx5_fc, node);
|
||||
struct mlx5_fc_cache *c = &counter->cache;
|
||||
u64 packets;
|
||||
u64 bytes;
|
||||
|
||||
if (counter->id > last_id)
|
||||
break;
|
||||
|
||||
mlx5_cmd_fc_bulk_get(dev, b,
|
||||
counter->id, &c->packets, &c->bytes);
|
||||
counter->id, &packets, &bytes);
|
||||
|
||||
if (c->packets == packets)
|
||||
continue;
|
||||
|
||||
c->packets = packets;
|
||||
c->bytes = bytes;
|
||||
c->lastuse = jiffies;
|
||||
}
|
||||
|
||||
out:
|
||||
|
|
Loading…
Reference in a new issue