diff options
Diffstat (limited to 'src/usr/diag/prdf/plat/mem/prdfMemTdCtlr.C')
-rw-r--r-- | src/usr/diag/prdf/plat/mem/prdfMemTdCtlr.C | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/usr/diag/prdf/plat/mem/prdfMemTdCtlr.C b/src/usr/diag/prdf/plat/mem/prdfMemTdCtlr.C index 6823e8254..156c6d99a 100644 --- a/src/usr/diag/prdf/plat/mem/prdfMemTdCtlr.C +++ b/src/usr/diag/prdf/plat/mem/prdfMemTdCtlr.C @@ -26,6 +26,7 @@ #include <prdfMemTdCtlr.H> #include <prdfMemAddress.H> +#include <prdfMemCaptureData.H> #include <prdfP9McbistExtraSig.H> using namespace TARGETING; @@ -110,6 +111,13 @@ uint32_t MemTdCtlr<T>::handleCmdComplete( STEP_CODE_DATA_STRUCT & io_sc ) } while (0); + // Gather capture data even if something failed above. + // NOTE: There is no need to capture the data if the command completed + // successfully with no errors because the error log will not be + // committed. + if ( !io_sc.service_data->queryDontCommitErrl() ) + MemCaptureData::addEccData<T>( iv_chip, io_sc ); + if ( SUCCESS != o_rc ) { PRDF_ERR( PRDF_FUNC "Failed on 0x%08x", iv_chip->getHuid() ); |