Skip to content

Commit c6ea04e

Browse files
lxindavem330
authored andcommitted
sctp: reset probe_timer in sctp_transport_pl_update
sctp_transport_pl_update() is called when transport update its dst and pathmtu, instead of stopping the PLPMTUD probe timer, PLPMTUD should start over and reset the probe timer. Otherwise, the PLPMTUD service would stop. Fixes: 92548ec ("sctp: add the probe timer in transport for PLPMTUD") Signed-off-by: Xin Long <[email protected]> Signed-off-by: David S. Miller <[email protected]>
1 parent 4017124 commit c6ea04e

File tree

1 file changed

+1
-3
lines changed

1 file changed

+1
-3
lines changed

include/net/sctp/sctp.h

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -653,12 +653,10 @@ static inline void sctp_transport_pl_update(struct sctp_transport *t)
653653
if (t->pl.state == SCTP_PL_DISABLED)
654654
return;
655655

656-
if (del_timer(&t->probe_timer))
657-
sctp_transport_put(t);
658-
659656
t->pl.state = SCTP_PL_BASE;
660657
t->pl.pmtu = SCTP_BASE_PLPMTU;
661658
t->pl.probe_size = SCTP_BASE_PLPMTU;
659+
sctp_transport_reset_probe_timer(t);
662660
}
663661

664662
static inline bool sctp_transport_pl_enabled(struct sctp_transport *t)

0 commit comments

Comments
 (0)