ipv4: use seqlock for nh_exceptions
authorJulian Anastasov <ja@ssi.bg>
Wed, 18 Jul 2012 10:15:35 +0000 (10:15 +0000)
committerDavid S. Miller <davem@davemloft.net>
Thu, 19 Jul 2012 17:30:14 +0000 (10:30 -0700)
commitaee06da6726d4981c51928c2d6d1e2cabeec7a10
treed7b0281232aac81edfd5da0ca96c6b99ac9c7dae
parent7fed84f622ec2696087301199c2952b85e0cc3b4
ipv4: use seqlock for nh_exceptions

Use global seqlock for the nh_exceptions. Call
fnhe_oldest with the right hash chain. Correct the diff
value for dst_set_expires.

v2: after suggestions from Eric Dumazet:
* get rid of spin lock fnhe_lock, rearrange update_or_create_fnhe
* continue daddr search in rt_bind_exception

v3:
* remove the daddr check before seqlock in rt_bind_exception
* restart lookup in rt_bind_exception on detected seqlock change,
as suggested by David Miller

Signed-off-by: Julian Anastasov <ja@ssi.bg>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/ip_fib.h
net/ipv4/route.c