diff options
author | Vlad Yasevich <vladislav.yasevich@hp.com> | 2007-06-07 19:47:03 +0200 |
---|---|---|
committer | Vladislav Yasevich <vxy@hera.kernel.org> | 2007-06-13 22:44:42 +0200 |
commit | c910b47e1811b3f8b184108c48de3d7af3e2999b (patch) | |
tree | 76ca90239b074a13137217d3732f79fe83a2500b /net/sctp/input.c | |
parent | [SCTP] Fix leak in sctp_getsockopt_local_addrs when copy_to_user fails (diff) | |
download | linux-c910b47e1811b3f8b184108c48de3d7af3e2999b.tar.xz linux-c910b47e1811b3f8b184108c48de3d7af3e2999b.zip |
[SCTP] Update pmtu handling to be similar to tcp
Introduce new function sctp_transport_update_pmtu that updates
the transports and destination caches view of the path mtu.
Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
Acked-by: Sridhar Samudrala <sri@us.ibm.com>
Diffstat (limited to 'net/sctp/input.c')
-rw-r--r-- | net/sctp/input.c | 16 |
1 files changed, 2 insertions, 14 deletions
diff --git a/net/sctp/input.c b/net/sctp/input.c index 885109fb3dda..45d6a644cf06 100644 --- a/net/sctp/input.c +++ b/net/sctp/input.c @@ -371,20 +371,8 @@ void sctp_icmp_frag_needed(struct sock *sk, struct sctp_association *asoc, return; if (t->param_flags & SPP_PMTUD_ENABLE) { - if (unlikely(pmtu < SCTP_DEFAULT_MINSEGMENT)) { - printk(KERN_WARNING "%s: Reported pmtu %d too low, " - "using default minimum of %d\n", - __FUNCTION__, pmtu, - SCTP_DEFAULT_MINSEGMENT); - /* Use default minimum segment size and disable - * pmtu discovery on this transport. - */ - t->pathmtu = SCTP_DEFAULT_MINSEGMENT; - t->param_flags = (t->param_flags & ~SPP_PMTUD) | - SPP_PMTUD_DISABLE; - } else { - t->pathmtu = pmtu; - } + /* Update transports view of the MTU */ + sctp_transport_update_pmtu(t, pmtu); /* Update association pmtu. */ sctp_assoc_sync_pmtu(asoc); |