This patch is supposing a case that bond_mii_monitor() is invoked in
bond_open(), and after that, 0 is set to miimon via sysfs (see same place on
other monitors).
Though message in bonding_store_miimon() says miimon value 1-INT_MAX rejected,
but it looks like 0 can be accepted and monitor must be stopped in that case.
Change code not to rearm bond_mii_monitor() when value 0 is set for miimon.
Signed-off-by: Makito SHIOKAWA <[EMAIL PROTECTED]>
---
drivers/net/bonding/bond_main.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
--- a/drivers/net/bonding/bond_main.c
+++ b/drivers/net/bonding/bond_main.c
@@ -2388,7 +2388,8 @@ void bond_mii_monitor(struct work_struct
delay = ((bond->params.miimon * HZ) / 1000) ? : 1;
read_unlock(&bond->lock);
- queue_delayed_work(bond->wq, &bond->mii_work, delay);
+ if (bond->params.miimon)
+ queue_delayed_work(bond->wq, &bond->mii_work, delay);
}
Maybe I miss something, but is this bond_mii_monitor() function
supposed to be ever started if (!bond->params.miimon)? (IOW: isn't
it enough to control this where the parameter is changed only?)
Regards,
Jarek P.
--
Makito SHIOKAWA
MIRACLE LINUX CORPORATION
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html