diff --git a/src/cpu/testers/traffic_gen/base.cc b/src/cpu/testers/traffic_gen/base.cc
index 41d0052..6778e41 100644
--- a/src/cpu/testers/traffic_gen/base.cc
+++ b/src/cpu/testers/traffic_gen/base.cc
@@ -78,7 +78,6 @@
       retryPkt(NULL),
       retryPktTick(0),
       updateEvent([this]{ update(); }, name()),
-      numSuppressed(0),
       masterID(system->getMasterId(this))
 {
 }
@@ -186,9 +185,9 @@
                     pkt->cmdString(), pkt->getAddr());
 
             ++numSuppressed;
-            if (numSuppressed % 10000)
+            if (!(static_cast<int>(numSuppressed.value()) % 10000))
                 warn("%s suppressed %d packets with non-memory addresses\n",
-                     name(), numSuppressed);
+                     name(), numSuppressed.value());
 
             delete pkt;
             pkt = nullptr;
@@ -314,6 +313,10 @@
         .name(name() + ".numPackets")
         .desc("Number of packets generated");
 
+    numSuppressed
+        .name(name() + ".numSuppressed")
+        .desc("Number of suppressed packets to non-memory space");
+
     numRetries
         .name(name() + ".numRetries")
         .desc("Number of retries");
diff --git a/src/cpu/testers/traffic_gen/base.hh b/src/cpu/testers/traffic_gen/base.hh
index 080bd78..fe4229f 100644
--- a/src/cpu/testers/traffic_gen/base.hh
+++ b/src/cpu/testers/traffic_gen/base.hh
@@ -163,7 +163,8 @@
     /** Event for scheduling updates */
     EventFunctionWrapper updateEvent;
 
-    uint64_t numSuppressed;
+    /** Count the number of dropped requests. */
+    Stats::Scalar numSuppressed;
 
   private: // Stats
     /** Count the number of generated packets. */
