Merge remote-tracking branch 'origin/master'
diff --git a/providers/of/link/src/main/java/org/onlab/onos/provider/of/link/impl/LinkDiscovery.java b/providers/of/link/src/main/java/org/onlab/onos/provider/of/link/impl/LinkDiscovery.java
index 7da2e75..ecb4765 100644
--- a/providers/of/link/src/main/java/org/onlab/onos/provider/of/link/impl/LinkDiscovery.java
+++ b/providers/of/link/src/main/java/org/onlab/onos/provider/of/link/impl/LinkDiscovery.java
@@ -158,7 +158,6 @@
}
this.slowPorts.add(port.getPortNo().getPortNumber());
- this.slowIterator = this.slowPorts.iterator();
}
}
@@ -176,7 +175,6 @@
synchronized (this) {
if (this.slowPorts.contains(portnum)) {
this.slowPorts.remove(portnum);
- this.slowIterator = this.slowPorts.iterator();
} else if (this.fastPorts.contains(portnum)) {
this.fastPorts.remove(portnum);
@@ -209,7 +207,6 @@
this.log.debug("Setting slow port to fast: {}:{}",
this.sw.getId(), portNumber);
this.slowPorts.remove(portNumber);
- this.slowIterator = this.slowPorts.iterator();
this.fastPorts.add(portNumber);
this.portProbeCount.put(portNumber, new AtomicInteger(0));
} else {
@@ -277,7 +274,7 @@
return "LinkDiscovery " + this.sw.getStringId();
}
- /*
+ /**
* Handles an incoming LLDP packet. Creates link in topology and sends ACK
* to port where LLDP originated.
*/
@@ -349,7 +346,6 @@
// Update fast and slow ports
fastIterator.remove();
this.slowPorts.add(portNumber);
- this.slowIterator = this.slowPorts.iterator();
this.portProbeCount.remove(portNumber);
// Remove link from topology
@@ -363,11 +359,9 @@
}
// send a probe for the next slow port
- if (this.slowPorts.size() > 0) {
- if (!this.slowIterator.hasNext()) {
- this.slowIterator = this.slowPorts.iterator();
- }
- if (this.slowIterator.hasNext()) {
+ if (!this.slowPorts.isEmpty()) {
+ this.slowIterator = this.slowPorts.iterator();
+ while (this.slowIterator.hasNext()) {
final int portNumber = this.slowIterator.next();
this.log.debug("sending slow probe to port {}", portNumber);
OFPortDesc port = findPort(portNumber);