diff --git a/conf/checkstyle/sun_checks.xml b/conf/checkstyle/sun_checks.xml
index 0f685fa..57908dd 100644
--- a/conf/checkstyle/sun_checks.xml
+++ b/conf/checkstyle/sun_checks.xml
@@ -219,10 +219,7 @@
         <!-- See http://checkstyle.sf.net/config_coding.html -->
         <!-- ONOS allows conditional operators -->
         <!-- <module name="AvoidInlineConditionals"/> -->
-        <module name="EmptyStatement">
-          <property name="severity" value="warning"/>
-        </module>
-
+        <module name="EmptyStatement"/>
         <module name="EqualsHashCode"/>
 
         <module name="HiddenField">
diff --git a/src/main/java/net/onrc/onos/core/linkdiscovery/internal/LinkDiscoveryManager.java b/src/main/java/net/onrc/onos/core/linkdiscovery/internal/LinkDiscoveryManager.java
index d8e8167..7497106 100644
--- a/src/main/java/net/onrc/onos/core/linkdiscovery/internal/LinkDiscoveryManager.java
+++ b/src/main/java/net/onrc/onos/core/linkdiscovery/internal/LinkDiscoveryManager.java
@@ -385,7 +385,7 @@
      */
     protected void removeFromQuarantineQueue(NodePortTuple npt) {
         // Remove all occurrences of the node port tuple from the list.
-        while (quarantineQueue.remove(npt)) ;
+        while (quarantineQueue.remove(npt)) { }
     }
 
     /**
@@ -408,7 +408,7 @@
      */
     protected void removeFromMaintenanceQueue(NodePortTuple npt) {
         // Remove all occurrences of the node port tuple from the queue.
-        while (maintenanceQueue.remove(npt)) ;
+        while (maintenanceQueue.remove(npt)) { }
     }
 
     /**
diff --git a/src/main/java/net/onrc/onos/core/util/PerformanceMonitor.java b/src/main/java/net/onrc/onos/core/util/PerformanceMonitor.java
index 5b2b52f..c09666a 100644
--- a/src/main/java/net/onrc/onos/core/util/PerformanceMonitor.java
+++ b/src/main/java/net/onrc/onos/core/util/PerformanceMonitor.java
@@ -236,19 +236,16 @@
     @Deprecated
     public static void stop(String tag) {
         theInstance.stopStep(tag);
-        ;
     }
 
     @Deprecated
     public static void clear() {
         theInstance.reset();
-        ;
     }
 
     @Deprecated
     public static void report() {
         theInstance.reportAll();
-        ;
     }
 
     @Deprecated
