Subject: Re: [PATCH iproute 2/2] utils: fix get_rtnl_link_stats_rta stats parsing

From: Stephen Hemminger <[email-masked]>
Date: Wed, 10 Oct 2018 12:11:39 -0700

On Wed, 10 Oct 2018 17:00:58 +0200
Lorenzo Bianconi <[email-masked]> wrote:

> iproute2 walks through the list of available tunnels using netlink
> protocol in order to get device info instead of reading
> them from proc filesystem. However the kernel reports device statistics
> using IFLA_INET6_STATS/IFLA_INET6_ICMP6STATS attributes nested in
> IFLA_PROTINFO one but iproutes expects these info in
> IFLA_STATS64/IFLA_STATS attributes.
> The issue can be triggered with the following reproducer:
> 
> $ip link add ip6d0 type ip6tnl mode ip6ip6 local 1111::1 remote 2222::1
> $ip -6 -d -s tunnel show ip6d0
> ip6d0: ipv6/ipv6 remote 2222::1 local 1111::1 encaplimit 4 hoplimit 64
> tclass 0x00 flowlabel 0x00000 (flowinfo 0x00000000)
> Dump terminated
> 
> Fix the issue introducing IFLA_INET6_STATS attribute parsing
> 
> Fixes: 3e953938717f ("iptunnel/ip6tunnel: Use netlink to walk through
> tunnels list")
> 
> Signed-off-by: Lorenzo Bianconi <[email-masked]>

Can't we fix the kernel to report statistics properly, rather than
starting iproute2 doing more /proc interfaces.