lkml.org 
[lkml]   [2018]   [Mar]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.9 009/177] bonding: handle link transition from FAIL to UP correctly
    Date
    4.9-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Mahesh Bandewar <maheshb@google.com>


    [ Upstream commit fb9eb899a6dc663e4a2deed9af2ac28f507d0ffb ]

    When link transitions from LINK_FAIL to LINK_UP, the commit phase is
    not called. This leads to an erroneous state causing slave-link state to
    get stuck in "going down" state while its speed and duplex are perfectly
    fine. This issue is a side-effect of splitting link-set into propose and
    commit phases introduced by de77ecd4ef02 ("bonding: improve link-status
    update in mii-monitoring")

    This patch fixes these issues by calling commit phase whenever link
    state change is proposed.

    Fixes: de77ecd4ef02 ("bonding: improve link-status update in mii-monitoring")
    Signed-off-by: Mahesh Bandewar <maheshb@google.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    drivers/net/bonding/bond_main.c | 3 ++-
    1 file changed, 2 insertions(+), 1 deletion(-)

    --- a/drivers/net/bonding/bond_main.c
    +++ b/drivers/net/bonding/bond_main.c
    @@ -2067,6 +2067,7 @@ static int bond_miimon_inspect(struct bo
    (bond->params.downdelay - slave->delay) *
    bond->params.miimon,
    slave->dev->name);
    + commit++;
    continue;
    }

    @@ -2104,7 +2105,7 @@ static int bond_miimon_inspect(struct bo
    (bond->params.updelay - slave->delay) *
    bond->params.miimon,
    slave->dev->name);
    -
    + commit++;
    continue;
    }


    \
     
     \ /
      Last update: 2018-03-23 12:40    [W:8.076 / U:0.020 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site