From patchwork Wed Feb 22 01:08:31 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mahesh Bandewar X-Patchwork-Id: 730852 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 3vSfQ63Fb5z9s7H for ; Wed, 22 Feb 2017 12:08:46 +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="wgvHJ/U8"; dkim-atps=neutral Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753639AbdBVBIl (ORCPT ); Tue, 21 Feb 2017 20:08:41 -0500 Received: from mail-pg0-f67.google.com ([74.125.83.67]:36625 "EHLO mail-pg0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753484AbdBVBIf (ORCPT ); Tue, 21 Feb 2017 20:08:35 -0500 Received: by mail-pg0-f67.google.com with SMTP id z128so2091683pgb.3 for ; Tue, 21 Feb 2017 17:08:34 -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=XsrIM/NXx4zmk+c0CAc49NCAw3vHBisCXGBbEIu4J0w=; b=wgvHJ/U8SN1jdnPFHHARSfHJaLFO9ROtBK5z8XSrA42Nz4KldKAmloCJAYXXlBa4YS XWPLSe9Mq/JG+tpLiIJqrCfMHNB1EnfARr8kucXPd/WsgVI7av0GvUyxVWC+Nfh34r+e KdNZPZA/lxmYzM2/P9b1xj55U16Vrj4FenWU44yA/8/U7ktFb5Xfg6iioCcYMEbXYOIg vRsEJDX08ALzP6IdpPAqT5wXO8Y9wr6bZ1jFUyNLYDtxLi+3kO8L9690e5EkQRuPZ2EZ a4ECWzwY2e/sH9MDndsv1iv70+1BK6iE4rf92hq3AtBzkV5VAkHe3w0dqLWsDl0q5aJT hWbg== 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=XsrIM/NXx4zmk+c0CAc49NCAw3vHBisCXGBbEIu4J0w=; b=RXRrQb2pb5B7XH+b2Cma+4KWGy8JZ4iqScHVXs/dwxHcaZVyCZYC+jaVD3PI8IPDmb XMGXEu9AHMTA7qTsp/kis/658wYDoEO/vlI7dbtqp8XLW4naPEDTw1D/yCnbulchPryi qBHLO3DPxVLqKznhSNK0dWALP8aGrz7gGh91y9vlIm/7uujUP/9blrk8U2qQi5RWyeR8 +YAFyUifEedH9BVum2mdNQHur4eFht6ZZ7rmpcu7H0EKyhFbu7Qwi09gHh0aSNWQqIvg wZsTFLVV3qqtNl/A+trUPsg88QevNKkbALjWZhU5FzMMFDD2vfILFIZKVZJJhXgA3URy 6r2w== X-Gm-Message-State: AMke39mkneoFIw2WOkaTyqUoUWOhBSIKi3DVgb97UZG7xi4SVsF954BR0lhZXE67GHuYjw== X-Received: by 10.84.129.132 with SMTP id b4mr43517559plb.54.1487725714182; Tue, 21 Feb 2017 17:08:34 -0800 (PST) Received: from localhost ([2620:0:1000:3012:2026:4ec6:c66e:5600]) by smtp.gmail.com with ESMTPSA id m6sm43024580pfg.126.2017.02.21.17.08.33 (version=TLS1_2 cipher=AES128-SHA bits=128/128); Tue, 21 Feb 2017 17:08:33 -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/4] bonding: remove "port-moved" state that was never implemented Date: Tue, 21 Feb 2017 17:08:31 -0800 Message-Id: <20170222010831.9959-1-mahesh@bandewar.net> X-Mailer: git-send-email 2.11.0.483.g087da7b7c-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 */