This has been reported (and ignored) before: http://lkml.iu.edu/hypermail/linux/kernel/1407.2/03790.html https://bugzilla.kernel.org/show_bug.cgi?id=89161 Regression was introduced by: commit 00503b6f702e (refs/bisect/bad) Author: dingtianhong <dingtianhong@xxxxxxxxxx> Date: Sat Jan 25 13:00:29 2014 +0800 bonding: fail_over_mac should only affect AB mode at enslave and removal processing According to bonding.txt, the fail_over_ma should only affect active-backup mode, but I found that the fail_over_mac could be set to active or follow in all modes, this will cause new slave could not be set to bond's MAC address at enslave processing and restore its own MAC address at removal processing. The correct way to fix the problem is that we should not add restrictions when setting options, just need to modify the bond enslave and removal processing to check the mode in addition to fail_over_mac when setting a slave's MAC during enslavement. The change active slave processing already only calls the fail_over_mac function when in active-backup mode. Thanks for Jay's suggestion. The patch also modify the pr_warning() to pr_warn(). Cc: Jay Vosburgh <fubar@xxxxxxxxxx> Cc: Veaceslav Falico <vfalico@xxxxxxxxxx> Cc: Andy Gospodarek <andy@xxxxxxxxxxxxx> Signed-off-by: Ding Tianhong <dingtianhong@xxxxxxxxxx> Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx> Since I never needed bonding or tun-interfaces before, I come late to the party. Some 6k lines have changed in the bonding driver since the regression got in two years ago. So a simple revert is unlikely to lead to happiness. But I absolutely need that functionality and would rather run a 3.13 kernel than live with the regression. dingtianhong, any suggestions? Jörn -- It is a cliché that most clichés are true, but then, like most clichés, that cliché is untrue. -- Stephen Fry -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html