mirror of
https://github.com/torvalds/linux.git
synced 2025-12-07 20:06:24 +00:00
sctp: re-use sctp_transport_pmtu in sctp_transport_route
sctp_transport_route currently is very similar to sctp_transport_pmtu plus a few other bits. This patch reuses sctp_transport_pmtu in sctp_transport_route and removes the duplicated code. Also, as all calls to sctp_transport_route were forcing the dst release before calling it, let's just include such release too. Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
22d7be267e
commit
6e91b578bf
@@ -644,16 +644,15 @@ static int sctp_send_asconf_add_ip(struct sock *sk,
|
||||
|
||||
list_for_each_entry(trans,
|
||||
&asoc->peer.transport_addr_list, transports) {
|
||||
/* Clear the source and route cache */
|
||||
sctp_transport_dst_release(trans);
|
||||
trans->cwnd = min(4*asoc->pathmtu, max_t(__u32,
|
||||
2*asoc->pathmtu, 4380));
|
||||
trans->ssthresh = asoc->peer.i.a_rwnd;
|
||||
trans->rto = asoc->rto_initial;
|
||||
sctp_max_rto(asoc, trans);
|
||||
trans->rtt = trans->srtt = trans->rttvar = 0;
|
||||
/* Clear the source and route cache */
|
||||
sctp_transport_route(trans, NULL,
|
||||
sctp_sk(asoc->base.sk));
|
||||
sctp_sk(asoc->base.sk));
|
||||
}
|
||||
}
|
||||
retval = sctp_send_asconf(asoc, chunk);
|
||||
@@ -896,7 +895,6 @@ skip_mkasconf:
|
||||
*/
|
||||
list_for_each_entry(transport, &asoc->peer.transport_addr_list,
|
||||
transports) {
|
||||
sctp_transport_dst_release(transport);
|
||||
sctp_transport_route(transport, NULL,
|
||||
sctp_sk(asoc->base.sk));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user