diff options
-rw-r--r-- | net/sctp/associola.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/net/sctp/associola.c b/net/sctp/associola.c index c9b91cb1cb0d..68a27f9796d2 100644 --- a/net/sctp/associola.c +++ b/net/sctp/associola.c | |||
@@ -907,8 +907,8 @@ void sctp_assoc_control_transport(struct sctp_association *asoc, | |||
907 | if (!first || t->last_time_heard > first->last_time_heard) { | 907 | if (!first || t->last_time_heard > first->last_time_heard) { |
908 | second = first; | 908 | second = first; |
909 | first = t; | 909 | first = t; |
910 | } | 910 | } else if (!second || |
911 | if (!second || t->last_time_heard > second->last_time_heard) | 911 | t->last_time_heard > second->last_time_heard) |
912 | second = t; | 912 | second = t; |
913 | } | 913 | } |
914 | 914 | ||
@@ -929,6 +929,8 @@ void sctp_assoc_control_transport(struct sctp_association *asoc, | |||
929 | first = asoc->peer.primary_path; | 929 | first = asoc->peer.primary_path; |
930 | } | 930 | } |
931 | 931 | ||
932 | if (!second) | ||
933 | second = first; | ||
932 | /* If we failed to find a usable transport, just camp on the | 934 | /* If we failed to find a usable transport, just camp on the |
933 | * primary, even if it is inactive. | 935 | * primary, even if it is inactive. |
934 | */ | 936 | */ |