aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornsxfreddy@gmail.com <nsxfreddy@gmail.com>2005-09-21 14:18:04 -0500
committerJeff Garzik <jgarzik@pobox.com>2005-09-21 22:23:13 -0400
commit552709d5aee9145f325bf07348fb299e84b2e5b3 (patch)
treee2087d962b5f2b6b74ea58c842a28d242a422edd
parentefb0372bbaf5b829ff8c39db372779928af542a7 (diff)
downloadlinux-552709d5aee9145f325bf07348fb299e84b2e5b3.tar.gz
[PATCH] bonding: Fix link monitor capability check (was skge: set mac address oops with bonding)
Fix bond_enslave link monitoring warning to check use_carrier status and ethtool_ops in addition to do_ioctl. This version checks ethtool_ops as well as do_ioctl, and also uses the per-bond params.use_carrier instead of the global use_carrier. Signed-off-by: Jason R. Martin <nsxfreddy@gmail.com> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
-rw-r--r--drivers/net/bonding/bond_main.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c
index 90449a0f2a6c44..6d00c3de1a836a 100644
--- a/drivers/net/bonding/bond_main.c
+++ b/drivers/net/bonding/bond_main.c
@@ -1653,7 +1653,8 @@ static int bond_enslave(struct net_device *bond_dev, struct net_device *slave_de
int old_features = bond_dev->features;
int res = 0;
- if (slave_dev->do_ioctl == NULL) {
+ if (!bond->params.use_carrier && slave_dev->ethtool_ops == NULL &&
+ slave_dev->do_ioctl == NULL) {
printk(KERN_WARNING DRV_NAME
": Warning : no link monitoring support for %s\n",
slave_dev->name);