[ONOS-2880] Initialize SuppressionRules before use

Change-Id: Icefce8109faa1732a5d2c7989695874775926977
diff --git a/providers/lldp/src/main/java/org/onosproject/provider/lldp/impl/LLDPLinkProvider.java b/providers/lldp/src/main/java/org/onosproject/provider/lldp/impl/LLDPLinkProvider.java
index 0519b3f..386d838 100644
--- a/providers/lldp/src/main/java/org/onosproject/provider/lldp/impl/LLDPLinkProvider.java
+++ b/providers/lldp/src/main/java/org/onosproject/provider/lldp/impl/LLDPLinkProvider.java
@@ -239,6 +239,7 @@
         deviceService.addListener(deviceListener);
         packetService.addProcessor(packetProcessor, PacketProcessor.advisor(0));
 
+        loadSuppressionRules();
         loadDevices();
 
         executor = newSingleThreadScheduledExecutor(groupedThreads("onos/link", "discovery-%d"));
@@ -247,7 +248,6 @@
         executor.scheduleAtFixedRate(new LinkPrunerTask(),
                                      LINK_PRUNER_DELAY, LINK_PRUNER_DELAY, SECONDS);
 
-        loadSuppressionRules();
         requestIntercepts();
     }
 
diff --git a/providers/lldp/src/main/java/org/onosproject/provider/lldp/impl/LinkDiscovery.java b/providers/lldp/src/main/java/org/onosproject/provider/lldp/impl/LinkDiscovery.java
index 5502624..8cdfd50 100644
--- a/providers/lldp/src/main/java/org/onosproject/provider/lldp/impl/LinkDiscovery.java
+++ b/providers/lldp/src/main/java/org/onosproject/provider/lldp/impl/LinkDiscovery.java
@@ -104,8 +104,12 @@
     }
 
     synchronized void stop() {
-        isStopped = true;
-        timeout.cancel();
+        if (!isStopped) {
+            isStopped = true;
+            timeout.cancel();
+        } else {
+            log.warn("LinkDiscovery stopped multiple times?");
+        }
     }
 
     synchronized void start() {