diff --git a/src/main/java/net/floodlightcontroller/core/internal/Controller.java b/src/main/java/net/floodlightcontroller/core/internal/Controller.java
index 76ee369ea901861a5b82274d5cf59b8fd86da024..3dbfa0dac6770042ad0138db79ca3946af8b9aa8 100644
--- a/src/main/java/net/floodlightcontroller/core/internal/Controller.java
+++ b/src/main/java/net/floodlightcontroller/core/internal/Controller.java
@@ -785,16 +785,6 @@ public class Controller
                                 eth);
                     }
                     
-                    // Print the packet-in for debugging purposes at this point
-                    // The context would have the necessary information for
-                    // the OFMessageFilterManager's getDataToString to work
-                    // for packet-ins.
-                    if (log.isDebugEnabled()) {
-                        String str = messageFilterManager.getDataAsString(sw, m, bc);
-                        log.trace("{}", str);
-                    }
-
-
                     // Get the starting time (overall and per-component) of 
                     // the processing chain for this packet if performance
                     // monitoring is turned on
diff --git a/src/main/java/org/openflow/protocol/OFPacketIn.java b/src/main/java/org/openflow/protocol/OFPacketIn.java
index 12b2b7fc4cd50d73db7c8d5ed63de3ad8002145b..b0527b1c1e0ccfc4f1eaac95df4a4b41a4bbbaa4 100644
--- a/src/main/java/org/openflow/protocol/OFPacketIn.java
+++ b/src/main/java/org/openflow/protocol/OFPacketIn.java
@@ -21,6 +21,7 @@ import java.util.Arrays;
 
 import org.jboss.netty.buffer.ChannelBuffer;
 import org.openflow.util.U16;
+import org.openflow.util.U32;
 import org.openflow.util.U8;
 
 /**
@@ -201,4 +202,10 @@ public class OFPacketIn extends OFMessage {
         }
         return true;
     }
+
+    public String toString() {
+        String myStr = super.toString();
+        return "packetIn" +
+            ":bufferId=" + U32.f(this.bufferId) + myStr;
+    }
 }