Received: by 2002:ac0:a5b6:0:0:0:0:0 with SMTP id m51-v6csp2314803imm; Mon, 28 May 2018 05:57:32 -0700 (PDT) X-Google-Smtp-Source: AB8JxZoRsIm+W8QBntzEXgWa/A55xbQUpSeWtxNyMghitbiXPTqxQJAtXI5Ad8ULIKEuvETS2XpP X-Received: by 2002:a62:8dc9:: with SMTP id p70-v6mr13377357pfk.72.1527512252536; Mon, 28 May 2018 05:57:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1527512252; cv=none; d=google.com; s=arc-20160816; b=HR2DWI+Ij+MXA7i0xGsRyJQgvLVuuncBtWaKyw34mQysAmNGQPDxepC+KV3Z7O5RCP iemVIWx8HnY2y35GCxAy7SarwTXQZelXVo41x+ympjmag+SnKTRT28qaU7rFc8fOZME8 YG7CY/GrkF7tOyMhUV4ps1GvjUy54RyZLmbQ3VRTEE0Bol6XuzPWsjJfXuarzQbsytkz zRq25jq67VA86bezaha/47fzam4yPQDS5Tw84De316n4MEpmpW25TYhb5y2ERjiuuXU7 NUsnJdcIGmMJZGQT38ktL2TGs2YMgMswmiqeMtCH/dewy9vp34T7WKudOGZ6cQyZeP7J Amaw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:user-agent:references :in-reply-to:message-id:date:subject:cc:to:from:dkim-signature :arc-authentication-results; bh=rUmx2AzpM5Hy+LkZIsoVO9TFyVSqQwjb1BoFu6iXTGs=; b=pbm8Wrdoa/ijlznlCFs1/LNAB84HZ3ZCQXrdYsf/Mw9e/aaSRwjY3RnEyfXd3m2E16 Cl+51QuEk9Z0BJtwpuFp6UhL52gTXwF45XgBjnXJ5jxOtI4GhH0PE31GVNiIc9nxrW3j COy6h/uY29LWhRPzymIyGZi53lasl2tP5UJvon+PyNI2SFvuUfnvOKt7tIKcP82npteG 9rlSs6/aa5zBXpBigOhXBRvym+yHAsDEQuq+vLC2elKIz1Zx86ZOzS9pj3oRJ+Pue0t0 H8Ai/88cSKaFJnGgLSDPVHDQRxIm+SyHR2sdmZfrLR27413Ql9j6XWqxUskrmIrDkNWn w8ow== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=zjANDjts; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id w15-v6si31865914plp.7.2018.05.28.05.57.17; Mon, 28 May 2018 05:57:32 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=zjANDjts; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1164757AbeE1M4Y (ORCPT + 99 others); Mon, 28 May 2018 08:56:24 -0400 Received: from mail.kernel.org ([198.145.29.99]:43588 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1163955AbeE1Kyw (ORCPT ); Mon, 28 May 2018 06:54:52 -0400 Received: from localhost (LFbn-1-12247-202.w90-92.abo.wanadoo.fr [90.92.61.202]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 883D2206B7; Mon, 28 May 2018 10:54:51 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1527504892; bh=jkYtDboioXsrjbxZG4YABRYg07Pdu+lw0Q0AtaJ9gKQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=zjANDjtszTaE/nyn1WkJDcsg7S3E4fnxaBfpqFHD7iePwtGnhjL5LtXdiBpacRz1u mxMyvyAIZ1TmpHOVTqMbDcPHjcNWyGSwxfhhDHEimhLFtSibiAIVKDu+jX0EpLyI1c aso14NTgZD1+4HhiE1J6TTEHITX4gtdBahWcw4iQ= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Xin Long , Nikolay Aleksandrov , Andy Gospodarek , "David S. Miller" , Sasha Levin Subject: [PATCH 4.14 300/496] bonding: fix the err path for dev hwaddr sync in bond_enslave Date: Mon, 28 May 2018 12:01:25 +0200 Message-Id: <20180528100332.458455892@linuxfoundation.org> X-Mailer: git-send-email 2.17.0 In-Reply-To: <20180528100319.498712256@linuxfoundation.org> References: <20180528100319.498712256@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.14-stable review patch. If anyone has any objections, please let me know. ------------------ From: Xin Long [ Upstream commit 5c78f6bfae2b10ff70e21d343e64584ea6280c26 ] vlan_vids_add_by_dev is called right after dev hwaddr sync, so on the err path it should unsync dev hwaddr. Otherwise, the slave dev's hwaddr will never be unsync when this err happens. Fixes: 1ff412ad7714 ("bonding: change the bond's vlan syncing functions with the standard ones") Signed-off-by: Xin Long Reviewed-by: Nikolay Aleksandrov Acked-by: Andy Gospodarek Signed-off-by: David S. Miller Signed-off-by: Sasha Levin Signed-off-by: Greg Kroah-Hartman --- drivers/net/bonding/bond_main.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) --- a/drivers/net/bonding/bond_main.c +++ b/drivers/net/bonding/bond_main.c @@ -1528,7 +1528,7 @@ int bond_enslave(struct net_device *bond if (res) { netdev_err(bond_dev, "Couldn't add bond vlan ids to %s\n", slave_dev->name); - goto err_close; + goto err_hwaddr_unsync; } prev_slave = bond_last_slave(bond); @@ -1769,6 +1769,10 @@ err_detach: synchronize_rcu(); slave_disable_netpoll(new_slave); +err_hwaddr_unsync: + if (!bond_uses_primary(bond)) + bond_hw_addr_flush(bond_dev, slave_dev); + err_close: slave_dev->priv_flags &= ~IFF_BONDING; dev_close(slave_dev);