ipv6: When forwarding count rx stats on the orig netdev
authorStephen Suryaputra <ssuryaextr@gmail.com>
Thu, 14 Oct 2021 13:08:45 +0000 (09:08 -0400)
committerJakub Kicinski <kuba@kernel.org>
Fri, 15 Oct 2021 22:32:04 +0000 (15:32 -0700)
commit0857d6f8c759d95f89d0436f86cdfd189ef99f20
treeca3d4db9a3a182d244c215e63bd13ae47f6ab9b3
parent4884ddba7f124da65cafa983b49b27daa460b91d
ipv6: When forwarding count rx stats on the orig netdev

Commit bdb7cc643fc9 ("ipv6: Count interface receive statistics on the
ingress netdev") does not work when ip6_forward() executes on the skbs
with vrf-enslaved netdev. Use IP6CB(skb)->iif to get to the right one.

Add a selftest script to verify.

Fixes: bdb7cc643fc9 ("ipv6: Count interface receive statistics on the ingress netdev")
Signed-off-by: Stephen Suryaputra <ssuryaextr@gmail.com>
Reviewed-by: David Ahern <dsahern@kernel.org>
Link: https://lore.kernel.org/r/20211014130845.410602-1-ssuryaextr@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/ipv6/ip6_output.c
tools/testing/selftests/net/forwarding/Makefile
tools/testing/selftests/net/forwarding/forwarding.config.sample
tools/testing/selftests/net/forwarding/ip6_forward_instats_vrf.sh [new file with mode: 0755]
tools/testing/selftests/net/forwarding/lib.sh