diff options
author | David S. Miller <davem@davemloft.net> | 2012-07-24 01:29:00 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-07-24 01:36:26 +0200 |
commit | 92101b3b2e3178087127709a556b091dae314e9e (patch) | |
tree | 06359f8823da3ed7617c5ea78e4a56bc5e958fea /net/sctp/protocol.c | |
parent | ipv4: Remove all RTCF_DIRECTSRC handliing. (diff) | |
download | linux-92101b3b2e3178087127709a556b091dae314e9e.tar.xz linux-92101b3b2e3178087127709a556b091dae314e9e.zip |
ipv4: Prepare for change of rt->rt_iif encoding.
Use inet_iif() consistently, and for TCP record the input interface of
cached RX dst in inet sock.
rt->rt_iif is going to be encoded differently, so that we can
legitimately cache input routes in the FIB info more aggressively.
When the input interface is "use SKB device index" the rt->rt_iif will
be set to zero.
This forces us to move the TCP RX dst cache installation into the ipv4
specific code, and as well it should since doing the route caching for
ipv6 is pointless at the moment since it is not inspected in the ipv6
input paths yet.
Also, remove the unlikely on dst->obsolete, all ipv4 dsts have
obsolete set to a non-zero value to force invocation of the check
callback.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sctp/protocol.c')
-rw-r--r-- | net/sctp/protocol.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/sctp/protocol.c b/net/sctp/protocol.c index 9c90811d1134..1f89c4e69645 100644 --- a/net/sctp/protocol.c +++ b/net/sctp/protocol.c @@ -568,7 +568,7 @@ static void sctp_v4_get_saddr(struct sctp_sock *sk, /* What interface did this skb arrive on? */ static int sctp_v4_skb_iif(const struct sk_buff *skb) { - return skb_rtable(skb)->rt_iif; + return inet_iif(skb); } /* Was this packet marked by Explicit Congestion Notification? */ |