diff options
author | Vlad Yasevich <vladislav.yasevich@hp.com> | 2011-04-26 17:51:31 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-04-27 16:14:04 -0400 |
commit | 9914ae3ca770389a3bec3114d0a07532a7f235dd (patch) | |
tree | 269120740aa1afdb0dd792284341aaee93024f28 /net/sctp/socket.c | |
parent | 625034113bd45c71fb9e329f52f25fef9e6993a3 (diff) |
sctp: cache the ipv6 source after route lookup
The ipv6 routing lookup does give us a source address,
but instead of filling it into the dst, it's stored in
the flowi. We can use that instead of going through the
entire source address selection again.
Also the useless ->dst_saddr member of sctp_pf is removed.
And sctp_v6_dst_saddr() is removed, instead by introduce
sctp_v6_to_addr(), which can be reused to cleanup some dup
code.
Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
Signed-off-by: Wei Yongjun <yjwei@cn.fujitsu.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sctp/socket.c')
-rw-r--r-- | net/sctp/socket.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/sctp/socket.c b/net/sctp/socket.c index f694ee116746..33d9ee629b4e 100644 --- a/net/sctp/socket.c +++ b/net/sctp/socket.c | |||
@@ -2287,7 +2287,7 @@ static int sctp_apply_peer_addr_params(struct sctp_paddrparams *params, | |||
2287 | trans->param_flags = | 2287 | trans->param_flags = |
2288 | (trans->param_flags & ~SPP_PMTUD) | pmtud_change; | 2288 | (trans->param_flags & ~SPP_PMTUD) | pmtud_change; |
2289 | if (update) { | 2289 | if (update) { |
2290 | sctp_transport_pmtu(trans); | 2290 | sctp_transport_pmtu(trans, sctp_opt2sk(sp)); |
2291 | sctp_assoc_sync_pmtu(asoc); | 2291 | sctp_assoc_sync_pmtu(asoc); |
2292 | } | 2292 | } |
2293 | } else if (asoc) { | 2293 | } else if (asoc) { |