ip6_tunnel: use dev_sw_netstats_rx_add()
authorEric Dumazet <edumazet@google.com>
Wed, 8 Jun 2022 15:46:35 +0000 (08:46 -0700)
committerJakub Kicinski <kuba@kernel.org>
Fri, 10 Jun 2022 04:53:10 +0000 (21:53 -0700)
We have a convenient helper, let's use it.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/ipv6/ip6_tunnel.c

index 689de5e..c7279f2 100644 (file)
@@ -796,7 +796,6 @@ static int __ip6_tnl_rcv(struct ip6_tnl *tunnel, struct sk_buff *skb,
                                                struct sk_buff *skb),
                         bool log_ecn_err)
 {
-       struct pcpu_sw_netstats *tstats;
        const struct ipv6hdr *ipv6h = ipv6_hdr(skb);
        int err;
 
@@ -856,11 +855,7 @@ static int __ip6_tnl_rcv(struct ip6_tnl *tunnel, struct sk_buff *skb,
                }
        }
 
-       tstats = this_cpu_ptr(tunnel->dev->tstats);
-       u64_stats_update_begin(&tstats->syncp);
-       tstats->rx_packets++;
-       tstats->rx_bytes += skb->len;
-       u64_stats_update_end(&tstats->syncp);
+       dev_sw_netstats_rx_add(tunnel->dev, skb->len);
 
        skb_scrub_packet(skb, !net_eq(tunnel->net, dev_net(tunnel->dev)));