[ovs-dev] [mii 1/2] netdev: Take responsibility for polling MII registers.
Ethan Jackson
ethan at nicira.com
Fri May 20 19:50:20 UTC 2011
Here is an incremental posted for completeness.
Ethan.
---
lib/netdev-linux.c | 6 +++---
vswitchd/bridge.c | 4 ++++
2 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/lib/netdev-linux.c b/lib/netdev-linux.c
index 79451c7..b5d3035 100644
--- a/lib/netdev-linux.c
+++ b/lib/netdev-linux.c
@@ -1134,9 +1134,9 @@ netdev_linux_set_miimon_interval(struct netdev *netdev_,
netdev_dev = netdev_dev_linux_cast(netdev_get_dev(netdev_));
- netdev_dev->miimon_interval = interval;
- if (netdev_dev->miimon_interval > 0) {
- netdev_dev->miimon_interval = MAX(interval, 100);
+ interval = interval > 0 ? MAX(interval, 100) : 0;
+ if (netdev_dev->miimon_interval != interval) {
+ netdev_dev->miimon_interval = interval;
timer_set_expired(&netdev_dev->miimon_timer);
}
diff --git a/vswitchd/bridge.c b/vswitchd/bridge.c
index c3fb919..cbda078 100644
--- a/vswitchd/bridge.c
+++ b/vswitchd/bridge.c
@@ -528,6 +528,10 @@ port_configure(struct port *port)
} else {
s.bond = NULL;
s.bond_stable_ids = NULL;
+
+ LIST_FOR_EACH(iface, port_elem, &port->ifaces) {
+ netdev_set_miimon_interval(iface->netdev, 0);
+ }
}
/* Register. */
--
1.7.4.4
More information about the dev
mailing list