summaryrefslogtreecommitdiffstats
path: root/src/usr/diag/prdf/plat/mem/prdfMemTdCtlr.C
diff options
context:
space:
mode:
Diffstat (limited to 'src/usr/diag/prdf/plat/mem/prdfMemTdCtlr.C')
-rw-r--r--src/usr/diag/prdf/plat/mem/prdfMemTdCtlr.C8
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() );
OpenPOWER on IntegriCloud