diff --git a/providers/lldp/src/main/java/org/onlab/onos/provider/lldp/impl/LinkDiscovery.java b/providers/lldp/src/main/java/org/onlab/onos/provider/lldp/impl/LinkDiscovery.java
index fc0a0f4..6ad6124 100644
--- a/providers/lldp/src/main/java/org/onlab/onos/provider/lldp/impl/LinkDiscovery.java
+++ b/providers/lldp/src/main/java/org/onlab/onos/provider/lldp/impl/LinkDiscovery.java
@@ -184,14 +184,13 @@
                 this.slowPorts.remove(portNumber);
                 this.fastPorts.add(portNumber);
                 this.portProbeCount.put(portNumber, new AtomicInteger(0));
-            } else {
-                if (this.fastPorts.contains(portNumber)) {
+            } else if (this.fastPorts.contains(portNumber)) {
                     this.portProbeCount.get(portNumber).set(0);
-                } else {
+            } else {
                     this.log.debug(
                             "Got ackProbe for non-existing port: {}",
                             portNumber);
-                }
+
             }
         }
     }
@@ -256,7 +255,7 @@
                     //fastIterator.remove();
                     //this.slowPorts.add(portNumber);
                     //this.portProbeCount.remove(portNumber);
-
+                    this.portProbeCount.get(portNumber).set(0);
 
                     ConnectPoint cp = new ConnectPoint(
                             device.id(),
