OSDN Git Service

ipv4: Fix input route performance regression.
authorDavid S. Miller <davem@davemloft.net>
Thu, 26 Jul 2012 11:14:38 +0000 (11:14 +0000)
committerDavid S. Miller <davem@davemloft.net>
Thu, 26 Jul 2012 22:50:39 +0000 (15:50 -0700)
commitc6cffba4ffa26a8ffacd0bb9f3144e34f20da7de
treeb67532a74343d42bcf8784b8e32d7cf6d69313db
parent4487e64de63b8e42efe5a5543871c42c5a5859d9
ipv4: Fix input route performance regression.

With the routing cache removal we lost the "noref" code paths on
input, and this can kill some routing workloads.

Reinstate the noref path when we hit a cached route in the FIB
nexthops.

With help from Eric Dumazet.

Reported-by: Alexander Duyck <alexander.duyck@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/route.h
net/ipv4/arp.c
net/ipv4/fib_semantics.c
net/ipv4/ip_fragment.c
net/ipv4/ip_input.c
net/ipv4/route.c
net/ipv4/xfrm4_input.c