summaryrefslogtreecommitdiffstats
path: root/src/usr/diag/prdf/plat/mem/prdfP9McbistDataBundle.H
diff options
context:
space:
mode:
Diffstat (limited to 'src/usr/diag/prdf/plat/mem/prdfP9McbistDataBundle.H')
-rw-r--r--src/usr/diag/prdf/plat/mem/prdfP9McbistDataBundle.H21
1 files changed, 20 insertions, 1 deletions
diff --git a/src/usr/diag/prdf/plat/mem/prdfP9McbistDataBundle.H b/src/usr/diag/prdf/plat/mem/prdfP9McbistDataBundle.H
index 4a284253a..44ef77ec7 100644
--- a/src/usr/diag/prdf/plat/mem/prdfP9McbistDataBundle.H
+++ b/src/usr/diag/prdf/plat/mem/prdfP9McbistDataBundle.H
@@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2016 */
+/* Contributors Listed Below - COPYRIGHT 2016,2019 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -36,6 +36,7 @@
// Platform includes
#include <prdfMemTdCtlr.H>
#include <prdfPlatServices.H>
+#include <prdfThresholdUtils.H>
namespace PRDF
{
@@ -81,6 +82,24 @@ class McbistDataBundle : public DataBundle
/** The Targeted Diagnostics controller. */
MemTdCtlr<TARGETING::TYPE_MCBIST> * iv_tdCtlr = nullptr;
+
+ public: // instance variables
+ #ifdef __HOSTBOOT_RUNTIME
+
+ // These are used to limit the number of times a scrub command will stop
+ // on a UE or CE on a rank. This is to prevent potential flooding of
+ // maintenance UEs or CEs. The threshold will be 16 per rank for each.
+ TimeBasedThreshold iv_ueStopCounter =
+ TimeBasedThreshold( 16, ThresholdResolution::TEN_HOURS );
+ TimeBasedThreshold iv_ceStopCounter =
+ TimeBasedThreshold( 16, ThresholdResolution::TEN_HOURS );
+
+ // If we stop on a UE or a CE, we will need to store the rank that the
+ // error is on so that we can clear our respective thresholds if the
+ // next error we stop on is on a different rank.
+ MemRank iv_ceUeRank;
+
+ #endif
};
/**
OpenPOWER on IntegriCloud