Message ID | 52DA3B44.1000605@huawei.com |
---|---|
State | Accepted, archived |
Delegated to: | David Miller |
Headers | show |
diff --git a/drivers/net/bonding/bond_options.c b/drivers/net/bonding/bond_options.c index 945a666..0ee0bfe 100644 --- a/drivers/net/bonding/bond_options.c +++ b/drivers/net/bonding/bond_options.c @@ -512,6 +512,12 @@ int bond_option_primary_set(struct bonding *bond, const char *primary) } } + if (bond->primary_slave) { + pr_info("%s: Setting primary slave to None.\n", + bond->dev->name); + bond->primary_slave = NULL; + bond_select_active_slave(bond); + } strncpy(bond->params.primary, primary, IFNAMSIZ); bond->params.primary[IFNAMSIZ - 1] = 0;
If the new primay is not matching any slave in the bond, the bond should record it to params, clean the primary slave and select a new active slave. Signed-off-by: Ding Tianhong <dingtianhong@huawei.com> --- drivers/net/bonding/bond_options.c | 6 ++++++ 1 file changed, 6 insertions(+)