File tree Expand file tree Collapse file tree 1 file changed +9
-4
lines changed
drivers/net/ethernet/google/gve Expand file tree Collapse file tree 1 file changed +9
-4
lines changed Original file line number Diff line number Diff line change @@ -41,28 +41,33 @@ static void gve_get_stats(struct net_device *dev, struct rtnl_link_stats64 *s)
41
41
{
42
42
struct gve_priv * priv = netdev_priv (dev );
43
43
unsigned int start ;
44
+ u64 packets , bytes ;
44
45
int ring ;
45
46
46
47
if (priv -> rx ) {
47
48
for (ring = 0 ; ring < priv -> rx_cfg .num_queues ; ring ++ ) {
48
49
do {
49
50
start =
50
51
u64_stats_fetch_begin (& priv -> rx [ring ].statss );
51
- s -> rx_packets + = priv -> rx [ring ].rpackets ;
52
- s -> rx_bytes + = priv -> rx [ring ].rbytes ;
52
+ packets = priv -> rx [ring ].rpackets ;
53
+ bytes = priv -> rx [ring ].rbytes ;
53
54
} while (u64_stats_fetch_retry (& priv -> rx [ring ].statss ,
54
55
start ));
56
+ s -> rx_packets += packets ;
57
+ s -> rx_bytes += bytes ;
55
58
}
56
59
}
57
60
if (priv -> tx ) {
58
61
for (ring = 0 ; ring < priv -> tx_cfg .num_queues ; ring ++ ) {
59
62
do {
60
63
start =
61
64
u64_stats_fetch_begin (& priv -> tx [ring ].statss );
62
- s -> tx_packets + = priv -> tx [ring ].pkt_done ;
63
- s -> tx_bytes + = priv -> tx [ring ].bytes_done ;
65
+ packets = priv -> tx [ring ].pkt_done ;
66
+ bytes = priv -> tx [ring ].bytes_done ;
64
67
} while (u64_stats_fetch_retry (& priv -> tx [ring ].statss ,
65
68
start ));
69
+ s -> tx_packets += packets ;
70
+ s -> tx_bytes += bytes ;
66
71
}
67
72
}
68
73
}
You can’t perform that action at this time.
0 commit comments