diff --git a/[refs] b/[refs] index 7ec5014fa030..71a8c1e1bc50 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 35790c0421121364883a167bab8a2e37e1f67f78 +refs/heads/master: 55fa0cfd7c3ac2ae34cac7dca2e3fbcfe661e6c3 diff --git a/trunk/net/sctp/transport.c b/trunk/net/sctp/transport.c index 4a368038d46f..165d54e07fcd 100644 --- a/trunk/net/sctp/transport.c +++ b/trunk/net/sctp/transport.c @@ -173,6 +173,10 @@ void sctp_transport_free(struct sctp_transport *transport) del_timer(&transport->T3_rtx_timer)) sctp_transport_put(transport); + /* Delete the ICMP proto unreachable timer if it's active. */ + if (timer_pending(&transport->proto_unreach_timer) && + del_timer(&transport->proto_unreach_timer)) + sctp_association_put(transport->asoc); sctp_transport_put(transport); }