From patchwork Wed Mar 8 18:55:59 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mahesh Bandewar X-Patchwork-Id: 736684 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3vdjd01dscz9s9c for ; Thu, 9 Mar 2017 06:04:36 +1100 (AEDT) Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=bandewar-net.20150623.gappssmtp.com header.i=@bandewar-net.20150623.gappssmtp.com header.b="eZqrJhbR"; dkim-atps=neutral Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754191AbdCHTEY (ORCPT ); Wed, 8 Mar 2017 14:04:24 -0500 Received: from mail-pg0-f65.google.com ([74.125.83.65]:35242 "EHLO mail-pg0-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754111AbdCHTEX (ORCPT ); Wed, 8 Mar 2017 14:04:23 -0500 Received: by mail-pg0-f65.google.com with SMTP id 187so4223328pgb.2 for ; Wed, 08 Mar 2017 11:04:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bandewar-net.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id; bh=Lj/BtpVP01tNhwQDlgqNLJBvrEZuzlX7GeiDYEwO/4c=; b=eZqrJhbRQWJbz0nqGEMH4UPneQLBo2ExYmC2HoHIKdAEP5SXfYjOFcUJNClk+HGARw heG3AfbDPrNTD5rUS5MQkJitDSiYbXHlx0UJOD+XeG8MlElNP1RL9wepM/y8wLYAYcT+ zBak9FPjoBAT3+6ivki84cddTnIVK5hDeoTGl6hNQXJPHGcHRQr8ieWLQaPAs/fd+Uv1 jDFsBJ1XwYpz3KKyb6ltYmZAX8lE99PdN8va9ud6c/wQy12ainKpwoOqFVecwPwz0DgL htRrhGXRkgNi/nJPUqPOjhHGWx+XEaesVxVHjgMlhVdjIqgwLWJ+7ZRJnZ1qJb/g+zY+ c8aQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=Lj/BtpVP01tNhwQDlgqNLJBvrEZuzlX7GeiDYEwO/4c=; b=dVU4yYegUpbd0rFNvNS6EgMUt22u2fvf6rE2xBIBGDoAopMW/Ekidt05602VzrNtoY 54MXUITvUdzK1TQNg/lpNzhNiM4aaD24csKKVSJndW2mHfhW/DchWdTg2JYVOwdlwZbF Ah8Bh/9HUCnWW9lX5swdHmRpAyItJPXRVF6VP9k+8P3BaDP44jB+XZ2R5zM+cxmKvBug i2bWq22C90OcOmHB34tV82gIQTrFkVw2fBlcEtLOmFKOacTXBkPZAWnOexKbRKpPLCNX sgrjHU9HQoPNzIgefPHiMtmFbdqH0AKLHMVK0Pu7k9cURiPoaSrOle+QvRBc/kDRfD8J U0Lg== X-Gm-Message-State: AMke39nD0fNw5e/ElfTpeZabL08XxftGGReBvZnqAfHg5a9CnAjovHkTw2hSmL0mKHyhEw== X-Received: by 10.99.112.75 with SMTP id a11mr8704465pgn.7.1488999361878; Wed, 08 Mar 2017 10:56:01 -0800 (PST) Received: from localhost ([2620:0:1000:3012:6431:729d:e1ee:a6dc]) by smtp.gmail.com with ESMTPSA id 194sm7592221pfx.134.2017.03.08.10.56.01 (version=TLS1_2 cipher=AES128-SHA bits=128/128); Wed, 08 Mar 2017 10:56:01 -0800 (PST) From: Mahesh Bandewar To: Jay Vosburgh , Andy Gospodarek , Veaceslav Falico , Nikolay Aleksandrov , David Miller , Eric Dumazet Cc: netdev , Mahesh Bandewar , Mahesh Bandewar Subject: [PATCH next 4/5] bonding: remove "port-moved" state that was never implemented Date: Wed, 8 Mar 2017 10:55:59 -0800 Message-Id: <20170308185559.23136-1-mahesh@bandewar.net> X-Mailer: git-send-email 2.12.0.246.ga2ecc84866-goog Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org From: Mahesh Bandewar LACP state-machine defines "port-moved" state when the same ActorSystemID and Port are seen in a LACPDU received on different port. The state is never set since it's not implemented. However the state-machine attempts to clear that state occasionally. LACP state machine is already complicated and since this state is not implemented, removing it's checks makes the state-machine little simpler. Signed-off-by: Mahesh Bandewar --- drivers/net/bonding/bond_3ad.c | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/drivers/net/bonding/bond_3ad.c b/drivers/net/bonding/bond_3ad.c index edc70ffad660..431926bba9f4 100644 --- a/drivers/net/bonding/bond_3ad.c +++ b/drivers/net/bonding/bond_3ad.c @@ -1052,8 +1052,7 @@ static void ad_rx_machine(struct lacpdu *lacpdu, struct port *port) port->sm_rx_state = AD_RX_INITIALIZE; port->sm_vars |= AD_PORT_CHURNED; /* check if port is not enabled */ - } else if (!(port->sm_vars & AD_PORT_BEGIN) - && !port->is_enabled && !(port->sm_vars & AD_PORT_MOVED)) + } else if (!(port->sm_vars & AD_PORT_BEGIN) && !port->is_enabled) port->sm_rx_state = AD_RX_PORT_DISABLED; /* check if new lacpdu arrived */ else if (lacpdu && ((port->sm_rx_state == AD_RX_EXPIRED) || @@ -1081,11 +1080,8 @@ static void ad_rx_machine(struct lacpdu *lacpdu, struct port *port) /* if no lacpdu arrived and no timer is on */ switch (port->sm_rx_state) { case AD_RX_PORT_DISABLED: - if (port->sm_vars & AD_PORT_MOVED) - port->sm_rx_state = AD_RX_INITIALIZE; - else if (port->is_enabled - && (port->sm_vars - & AD_PORT_LACP_ENABLED)) + if (port->is_enabled && + (port->sm_vars & AD_PORT_LACP_ENABLED)) port->sm_rx_state = AD_RX_EXPIRED; else if (port->is_enabled && ((port->sm_vars @@ -1115,7 +1111,6 @@ static void ad_rx_machine(struct lacpdu *lacpdu, struct port *port) port->sm_vars &= ~AD_PORT_SELECTED; __record_default(port); port->actor_oper_port_state &= ~AD_STATE_EXPIRED; - port->sm_vars &= ~AD_PORT_MOVED; port->sm_rx_state = AD_RX_PORT_DISABLED; /* Fall Through */