]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
ip6_tunnel: use dev_sw_netstats_rx_add()
authorEric Dumazet <edumazet@google.com>
Wed, 8 Jun 2022 15:46:35 +0000 (08:46 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 23 Feb 2024 07:54:53 +0000 (08:54 +0100)
[ Upstream commit afd2051b18404640a116fd3bb2460da214ccbda4 ]

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>
Stable-dep-of: 8d975c15c0cd ("ip6_tunnel: make sure to pull inner header in __ip6_tnl_rcv()")
Signed-off-by: Sasha Levin <sashal@kernel.org>
net/ipv6/ip6_tunnel.c

index a41ba4b161c43b6cc72a326200e967cc8faa7d2e..35bd93347b8bb22babe637b3b446bdd9f51c5d5f 100644 (file)
@@ -798,7 +798,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;
 
@@ -858,11 +857,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)));