Message ID | 52DE4166.9030208@huawei.com |
---|---|
State | Changes Requested, 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..0996ab4 100644 --- a/drivers/net/bonding/bond_options.c +++ b/drivers/net/bonding/bond_options.c @@ -550,6 +550,12 @@ int bond_option_primary_reselect_set(struct bonding *bond, int primary_reselect) int bond_option_fail_over_mac_set(struct bonding *bond, int fail_over_mac) { + if (bond->params.mode != BOND_MODE_ACTIVEBACKUP) { + pr_err("%s: fail_over_mac only affects active-backup mode\n", + bond->dev->name); + return -EINVAL; + } + if (bond_parm_tbl_lookup(fail_over_mac, fail_over_mac_tbl) < 0) { pr_err("%s: Ignoring invalid fail_over_mac value %d.\n", bond->dev->name, fail_over_mac);
The fail_over_mac could be set by sysfs in every mode now, it will cause bonding not to set all slaves to the same MAC address, but in rr, xor, broadcast, lacp mode ,the slaves should have the same MAC address with the master, so don't set the fail_over_mac by sysfs if the mode is not active-backup. Signed-off-by: Ding Tianhong <dingtianhong@huawei.com> --- drivers/net/bonding/bond_options.c | 6 ++++++ 1 file changed, 6 insertions(+)