diff options
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, | |||
371 | return; | 371 | return; |
372 | 372 | ||
373 | if (t->param_flags & SPP_PMTUD_ENABLE) { | 373 | if (t->param_flags & SPP_PMTUD_ENABLE) { |
374 | if (unlikely(pmtu < SCTP_DEFAULT_MINSEGMENT)) { | 374 | /* Update transports view of the MTU */ |
375 | printk(KERN_WARNING "%s: Reported pmtu %d too low, " | 375 | sctp_transport_update_pmtu(t, pmtu); |
376 | "using default minimum of %d\n", | ||
377 | __FUNCTION__, pmtu, | ||
378 | SCTP_DEFAULT_MINSEGMENT); | ||
379 | /* Use default minimum segment size and disable | ||
380 | * pmtu discovery on this transport. | ||
381 | */ | ||
382 | t->pathmtu = SCTP_DEFAULT_MINSEGMENT; | ||
383 | t->param_flags = (t->param_flags & ~SPP_PMTUD) | | ||
384 | SPP_PMTUD_DISABLE; | ||
385 | } else { | ||
386 | t->pathmtu = pmtu; | ||
387 | } | ||
388 | 376 | ||
389 | /* Update association pmtu. */ | 377 | /* Update association pmtu. */ |
390 | sctp_assoc_sync_pmtu(asoc); | 378 | sctp_assoc_sync_pmtu(asoc); |