From patchwork Fri Mar 20 17:46:38 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alexey Dobriyan X-Patchwork-Id: 452727 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 5AB4014010F for ; Sat, 21 Mar 2015 04:46:43 +1100 (AEDT) Authentication-Results: ozlabs.org; dkim=fail reason="verification failed; unprotected key" header.d=gmail.com header.i=@gmail.com header.b=T/5r2ENo; dkim-adsp=none (unprotected policy); dkim-atps=neutral Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751343AbbCTRqi (ORCPT ); Fri, 20 Mar 2015 13:46:38 -0400 Received: from mail-wg0-f46.google.com ([74.125.82.46]:34936 "EHLO mail-wg0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750999AbbCTRqh (ORCPT ); Fri, 20 Mar 2015 13:46:37 -0400 Received: by wgdm6 with SMTP id m6so95374522wgd.2 for ; Fri, 20 Mar 2015 10:46:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=date:from:to:cc:subject:message-id:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; bh=7EZcnqKtHPeHVE9xnfGbngisjQNaQ+SkJDZDExLrKpY=; b=T/5r2ENo8Xgl6fEwFsNOo5R4xtZeB+XzkzmqjBTmutfGe02nAn9rPnGlmGc98Pwrgh 7pvucPB66tm95H338XOiuIpf2hzFkgWdMSw+tDUAt4A+63ceWnOMmzc1icwfpEepEomw j25DD2FIncZbhPDRlsHhOMIBFeRFKPG4HL6f66VUYkbQD8bcEa3NmHFH2XbQsRMOOHDn 7eOVP87LyraQ+Bz78oskVxDisGMeStv0LlaO0ycthPihinFPR9v2qOhsAWyYPa5nFRu/ /mqV6cBAwwDYD4bNKqX+/epB9Mnlsxdk3yViODzF5kjEckULFGWqQLlzuXl1q+ygJyWC Ba8w== X-Received: by 10.194.8.99 with SMTP id q3mr166731535wja.88.1426873596885; Fri, 20 Mar 2015 10:46:36 -0700 (PDT) Received: from p183.telecom.by (nat4-minsk-pool-46-53-177-222.telecom.by. [46.53.177.222]) by mx.google.com with ESMTPSA id y14sm7268975wjr.39.2015.03.20.10.46.35 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 20 Mar 2015 10:46:36 -0700 (PDT) Date: Fri, 20 Mar 2015 20:46:38 +0300 From: Alexey Dobriyan To: davem@davemloft.net Cc: vfalico@gmail.com, andy@greyhouse.net, netdev@vger.kernel.org, jay.vosburgh@canonical.com Subject: [PATCH v2] bonding: ban stacked bonding support Message-ID: <20150320174638.GA2053@p183.telecom.by> References: <20150220222042.GA15595@p183.telecom.by> <22754.1424474040@famine> <20150320174308.GA2005@p183.telecom.by> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20150320174308.GA2005@p183.telecom.by> User-Agent: Mutt/1.5.23 (2014-03-12) Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org If you add bonding master as a slave, and then release it, it will no longer be an IFF_BONDING creating problems like described at https://bugzilla.kernel.org/show_bug.cgi?id=89541 echo +bond1 >/sys/class/net/bonding_masters echo 1 >/sys/class/net/bond1/bonding/mode echo +bond2 >/sys/class/net/bonding_masters echo +bond2 >/sys/class/net/bond1/bonding/slaves echo -bond2 >/sys/class/net/bond1/bonding/slaves echo -bond2 >/sys/class/net/bonding_masters cat /proc/net/bonding/bond2 # should not exist [oops] Signed-off-by: Alexey Dobriyan --- drivers/net/bonding/bond_main.c | 5 +++++ 1 file changed, 5 insertions(+) -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html --- a/drivers/net/bonding/bond_main.c +++ b/drivers/net/bonding/bond_main.c @@ -1248,6 +1248,11 @@ int bond_enslave(struct net_device *bond_dev, struct net_device *slave_dev) slave_dev->name); } + if (netif_is_bond_master(slave_dev)) { + netdev_err(bond_dev, "device is bond master\n"); + return -EBUSY; + } + /* already enslaved */ if (slave_dev->flags & IFF_SLAVE) { netdev_dbg(bond_dev, "Error: Device was already enslaved\n");