diff options
Diffstat (limited to 'src/usr')
-rwxr-xr-x | src/usr/diag/prdf/common/plat/pegasus/Ex.rule | 20 | ||||
-rw-r--r-- | src/usr/diag/prdf/plat/pegasus/prdfPlatP8Ex.C | 22 |
2 files changed, 32 insertions, 10 deletions
diff --git a/src/usr/diag/prdf/common/plat/pegasus/Ex.rule b/src/usr/diag/prdf/common/plat/pegasus/Ex.rule index 7ab70f3f5..08b7acb4c 100755 --- a/src/usr/diag/prdf/common/plat/pegasus/Ex.rule +++ b/src/usr/diag/prdf/common/plat/pegasus/Ex.rule @@ -1471,19 +1471,31 @@ actionclass L3UE funccall("L3UE"); }; -actionclass L3CE +# Thresholding and runtime handling (line deletes and column repairs) +# for cache CEs +actionclass thrAndL2CE +{ + threshold( field(32 / day), mfg_file(P8EX_L2_CACHE_CES) ); + funccall("L2CE"); +}; +actionclass thrAndL3CE { - calloutSelfHigh; threshold( field(32 / day), mfg_file(P8EX_L3_CACHE_CES) ); funccall("L3CE"); }; +actionclass L3CE +{ + calloutSelfHigh; + # only threshold and attempt repairs on FSP + try(funccall("InHostboot"), thrAndL3CE); +}; actionclass L2CE { calloutSelfHigh; - threshold( field(32 / day), mfg_file(P8EX_L2_CACHE_CES) ); - funccall("L2CE"); + # only threshold and attempt repairs on FSP + try(funccall("InHostboot"), thrAndL2CE); }; actionclass L2UE diff --git a/src/usr/diag/prdf/plat/pegasus/prdfPlatP8Ex.C b/src/usr/diag/prdf/plat/pegasus/prdfPlatP8Ex.C index 8c13b041f..6d4c201f2 100644 --- a/src/usr/diag/prdf/plat/pegasus/prdfPlatP8Ex.C +++ b/src/usr/diag/prdf/plat/pegasus/prdfPlatP8Ex.C @@ -109,9 +109,8 @@ int32_t L3UE( ExtensibleChip * i_chip, int32_t L3CE( ExtensibleChip * i_chip, STEP_CODE_DATA_STRUCT & i_sc ) { - PRDF_ERR( "[L3CE] Unexpected attention in Hostboot: " - "HUID=0x%08x", i_chip->GetId() ); - CalloutUtil::defaultError( i_sc ); + // We can get these errors during hostboot, but will wait for runtime + // to attempt repairs return SUCCESS; } PRDF_PLUGIN_DEFINE(Ex, L3CE); @@ -136,11 +135,22 @@ int32_t L2UE( ExtensibleChip * i_chip, int32_t L2CE( ExtensibleChip * i_chip, STEP_CODE_DATA_STRUCT & i_sc ) { - PRDF_ERR( "[L2CE] Unexpected attention in Hostboot: " - "HUID=0x%08x", i_chip->GetId() ); - CalloutUtil::defaultError( i_sc ); + // We can get these errors during hostboot, but will wait for runtime + // to attempt repairs return SUCCESS; } PRDF_PLUGIN_DEFINE(Ex, L2CE); +/** + * @brief Check if we're running in hostboot + * @param i_chip Ex chip. + * @param i_stepcode Step Code data struct + * @return SUCCESS because this is the Hostboot file + */ +int32_t InHostboot( ExtensibleChip * i_chip, + STEP_CODE_DATA_STRUCT & i_stepcode ) +{ + return SUCCESS; +} PRDF_PLUGIN_DEFINE(Ex, InHostboot); + } // end namespace Ex } // end namespace PRDF |