From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756117Ab3KMBfc (ORCPT ); Tue, 12 Nov 2013 20:35:32 -0500 Received: from mail-lb0-f180.google.com ([209.85.217.180]:63965 "EHLO mail-lb0-f180.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755269Ab3KMBfW (ORCPT ); Tue, 12 Nov 2013 20:35:22 -0500 From: Chang Xiangzhong To: vyasevich@gmail.com, nhorman@tuxdriver.com, davem@davemloft.net Cc: linux-sctp@vger.kernel.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, dreibh@simula.no, Chang Xiangzhong Subject: [PATCH 1/1] net: sctp: bug fixing when sctp path recovers Date: Wed, 13 Nov 2013 02:34:46 +0100 Message-Id: <1384306486-31345-1-git-send-email-changxiangzhong@gmail.com> X-Mailer: git-send-email 1.7.9.5 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Look for the __two__ most recently used path/transport and set to active_path and retran_path respectively Signed-off-by: changxiangzhong@gmail.com --- net/sctp/associola.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/net/sctp/associola.c b/net/sctp/associola.c index ab67efc..070011a 100644 --- a/net/sctp/associola.c +++ b/net/sctp/associola.c @@ -913,11 +913,15 @@ void sctp_assoc_control_transport(struct sctp_association *asoc, if (!first || t->last_time_heard > first->last_time_heard) { second = first; first = t; + continue; } if (!second || t->last_time_heard > second->last_time_heard) second = t; } + if (!second) + second = first; + /* RFC 2960 6.4 Multi-Homed SCTP Endpoints * * By default, an endpoint should always transmit to the -- 1.7.9.5