summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZane Shelley <zshelle@us.ibm.com>2017-02-17 11:19:19 -0600
committerZane C. Shelley <zshelle@us.ibm.com>2017-02-27 10:41:00 -0500
commit0de839164574599231f207f073803222a313d3d7 (patch)
tree19566e468eecb4ee3262d5c08842283dd43bcfbf
parentcbc8e2e8919c5d8a7159a96803040511623c19dd (diff)
downloadtalos-hostboot-0de839164574599231f207f073803222a313d3d7.tar.gz
talos-hostboot-0de839164574599231f207f073803222a313d3d7.zip
PRD: reduced error path on memory threshold functions
Change-Id: I12ed4cca3b5b10d7d5505af0a0a23971e29634d0 RTC: 169729 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/36675 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Caleb N. Palmer <cnpalmer@us.ibm.com> Reviewed-by: Benjamin J. Weisenbeck <bweisenb@us.ibm.com> Reviewed-by: Zane C. Shelley <zshelle@us.ibm.com> Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/37012 Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
-rw-r--r--src/usr/diag/prdf/common/plat/pegasus/prdfCenMbaTdCtlr_common.C10
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/prdfCenMbaTdCtlr_rt.C7
-rwxr-xr-xsrc/usr/diag/prdf/common/plat/pegasus/prdfCenMembuf.C12
-rwxr-xr-xsrc/usr/diag/prdf/plat/mem/prdfMemIplCeStats.C104
-rwxr-xr-xsrc/usr/diag/prdf/plat/mem/prdfMemIplCeStats.H21
-rwxr-xr-xsrc/usr/diag/prdf/plat/mem/prdfMemThresholds.C98
-rwxr-xr-xsrc/usr/diag/prdf/plat/mem/prdfMemThresholds.H27
-rw-r--r--src/usr/diag/prdf/prdfMain_ipl.C29
8 files changed, 90 insertions, 218 deletions
diff --git a/src/usr/diag/prdf/common/plat/pegasus/prdfCenMbaTdCtlr_common.C b/src/usr/diag/prdf/common/plat/pegasus/prdfCenMbaTdCtlr_common.C
index 119c74f70..d478b0bc6 100644
--- a/src/usr/diag/prdf/common/plat/pegasus/prdfCenMbaTdCtlr_common.C
+++ b/src/usr/diag/prdf/common/plat/pegasus/prdfCenMbaTdCtlr_common.C
@@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2013,2015 */
+/* Contributors Listed Below - COPYRIGHT 2013,2017 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -643,13 +643,7 @@ int32_t CenMbaTdCtlrCommon::setRtEteThresholds()
break;
}
- uint16_t softIntCe = 0;
- o_rc = getScrubCeThreshold( iv_mbaChip, iv_rank, softIntCe );
- if ( SUCCESS != o_rc )
- {
- PRDF_ERR( PRDF_FUNC "getScrubCeThreshold() failed." );
- break;
- }
+ uint32_t softIntCe = getScrubCeThreshold( iv_mbaChip, iv_rank );
// Only care about retry CEs if there are a lot of them. So the
// threshold will be high in the field. However, in MNFG the retry CEs
diff --git a/src/usr/diag/prdf/common/plat/pegasus/prdfCenMbaTdCtlr_rt.C b/src/usr/diag/prdf/common/plat/pegasus/prdfCenMbaTdCtlr_rt.C
index 2d9892371..758e88454 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/prdfCenMbaTdCtlr_rt.C
+++ b/src/usr/diag/prdf/common/plat/pegasus/prdfCenMbaTdCtlr_rt.C
@@ -2589,12 +2589,7 @@ int32_t CenMbaTdCtlr::getTpsCeThr( uint16_t & o_thr )
}
else
{
- o_rc = getScrubCeThreshold( iv_mbaChip, iv_rank, o_thr );
- if ( SUCCESS != o_rc )
- {
- PRDF_ERR( PRDF_FUNC "getScrubCeThreshold() failed." );
- break;
- }
+ o_thr = getScrubCeThreshold( iv_mbaChip, iv_rank );
}
} while( 0 );
diff --git a/src/usr/diag/prdf/common/plat/pegasus/prdfCenMembuf.C b/src/usr/diag/prdf/common/plat/pegasus/prdfCenMembuf.C
index 7c84a4fc0..a1a11e0c2 100755
--- a/src/usr/diag/prdf/common/plat/pegasus/prdfCenMembuf.C
+++ b/src/usr/diag/prdf/common/plat/pegasus/prdfCenMembuf.C
@@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2012,2016 */
+/* Contributors Listed Below - COPYRIGHT 2012,2017 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -517,14 +517,8 @@ int32_t AnalyzeFetchNce( ExtensibleChip * i_membChip,
if ( mfgMode() )
{
// Get the MNFG CE thresholds.
- uint16_t dramTh, hrTh, dimmTh;
- l_rc = getMnfgMemCeTh( mbaChip, rank, dramTh, hrTh, dimmTh );
- if ( SUCCESS != l_rc )
- {
- PRDF_ERR( PRDF_FUNC "getMnfgMemCeTh() failed: rank=m%ds%d",
- rank.getMaster(), rank.getSlave() );
- break;
- }
+ uint32_t dramTh, hrTh, dimmTh;
+ getMnfgMemCeTh( mbaChip, rank, dramTh, hrTh, dimmTh );
// Get counts from CE table.
uint32_t dramCount, hrCount, dimmCount;
diff --git a/src/usr/diag/prdf/plat/mem/prdfMemIplCeStats.C b/src/usr/diag/prdf/plat/mem/prdfMemIplCeStats.C
index 8e8ee84d8..147c6ec35 100755
--- a/src/usr/diag/prdf/plat/mem/prdfMemIplCeStats.C
+++ b/src/usr/diag/prdf/plat/mem/prdfMemIplCeStats.C
@@ -175,45 +175,13 @@ int32_t MemIplCeStats<T>::collectStats( const MemRank & i_stopRank )
//------------------------------------------------------------------------------
template<TYPE T>
-int32_t MemIplCeStats<T>::analyzeStats( bool & o_callOutsMade )
+bool MemIplCeStats<T>::analyzeStats()
{
- #define PRDF_FUNC "MemIplCeStats::analyzeStats "
- int32_t o_rc = SUCCESS;
-
- o_callOutsMade = false;
+ bool tmp1 = calloutCePerDram();
+ bool tmp2 = calloutCePerRank();
+ bool tmp3 = calloutCePerDs();
- do
- {
- TargetHandle_t trgt = iv_chip->getTrgt();
-
- o_rc = calloutCePerDram( o_callOutsMade );
- if ( SUCCESS != o_rc )
- {
- PRDF_ERR( PRDF_FUNC " calloutCePerDram() failed. trgt:0X%08X",
- getHuid( trgt ) );
- break;
- }
-
- o_rc = calloutCePerRank( o_callOutsMade );
- if ( SUCCESS != o_rc )
- {
- PRDF_ERR( PRDF_FUNC "calloutCePerRank() failed. trgt:0X%08X",
- getHuid( trgt ) );
- break;
- }
-
- o_rc = calloutCePerDs( o_callOutsMade );
- if ( SUCCESS != o_rc )
- {
- PRDF_ERR( PRDF_FUNC " calloutCePerDs() failed. trgt:0X%08X",
- getHuid( trgt ) );
- break;
- }
-
- } while (0);
-
- return o_rc;
- #undef PRDF_FUNC
+ return ( tmp1 || tmp2 || tmp3 );
}
//------------------------------------------------------------------------------
@@ -281,10 +249,9 @@ int32_t MemIplCeStats<T>::calloutHardCes( const MemRank & i_stopRank )
//------------------------------------------------------------------------------
template<TYPE T>
-int32_t MemIplCeStats<T>::calloutCePerDram( bool & o_callOutsMade )
+bool MemIplCeStats<T>::calloutCePerDram()
{
- #define PRDF_FUNC "[MemIplCeStats::calloutCePerDram] "
- int32_t o_rc = SUCCESS;
+ bool o_callOutsMade = false;
TargetHandle_t trgt = iv_chip->getTrgt();
@@ -301,16 +268,8 @@ int32_t MemIplCeStats<T>::calloutCePerDram( bool & o_callOutsMade )
continue;
// Get the CEs per DRAM threshold.
- uint16_t dramTh = 1, junk0, junk1;
-
- o_rc = getMnfgMemCeTh<T>( iv_chip, dramIter->first.rank, dramTh,
- junk0, junk1 );
- if ( SUCCESS != o_rc )
- {
- PRDF_ERR( PRDF_FUNC "getMnfgMemCeTh() failed. trgt:0x%08X",
- getHuid( trgt ) );
- break;
- }
+ uint32_t dramTh = 1, junk0, junk1;
+ getMnfgMemCeTh<T>( iv_chip, dramIter->first.rank, dramTh, junk0, junk1);
// Now, check if a threshold has been reached. If not, continue to the
// next entry in iv_dsMap.
@@ -353,17 +312,16 @@ int32_t MemIplCeStats<T>::calloutCePerDram( bool & o_callOutsMade )
}
}
}
- return o_rc;
- #undef PRDF_FUNC
+
+ return o_callOutsMade;
}
//------------------------------------------------------------------------------
template<TYPE T>
-int32_t MemIplCeStats<T>::calloutCePerRank( bool & o_callOutsMade )
+bool MemIplCeStats<T>::calloutCePerRank()
{
- #define PRDF_FUNC "[MemIplCeStats::calloutCePerRank] "
- int32_t o_rc = SUCCESS;
+ bool o_callOutsMade = false;
TargetHandle_t trgt = iv_chip->getTrgt();
@@ -380,15 +338,8 @@ int32_t MemIplCeStats<T>::calloutCePerRank( bool & o_callOutsMade )
continue;
// Get the CEs per rank threshold.
- uint16_t junk0, rankTh, junk1;
- o_rc = getMnfgMemCeTh<T>( iv_chip, rankIter->first.rank, junk0,
- rankTh, junk1 );
- if ( SUCCESS != o_rc )
- {
- PRDF_ERR( PRDF_FUNC "getMnfgMemCeTh() failed. trgt:0x%08X",
- getHuid( trgt ) );
- break;
- }
+ uint32_t junk0, rankTh, junk1;
+ getMnfgMemCeTh<T>( iv_chip, rankIter->first.rank, junk0, rankTh, junk1);
// Now, check if a threshold has been reached. If not, continue to the
// next entry in iv_rankMap.
@@ -430,17 +381,17 @@ int32_t MemIplCeStats<T>::calloutCePerRank( bool & o_callOutsMade )
}
}
}
- return o_rc;
- #undef PRDF_FUNC
+
+ return o_callOutsMade;
}
//------------------------------------------------------------------------------
template<TYPE T>
-int32_t MemIplCeStats<T>::calloutCePerDs( bool & o_callOutsMade )
+bool MemIplCeStats<T>::calloutCePerDs()
{
- #define PRDF_FUNC "[MemIplCeStats::calloutCePerDs] "
- int32_t o_rc = SUCCESS;
+ bool o_callOutsMade = false;
+
TargetHandle_t trgt = iv_chip->getTrgt();
for ( typename CePerHalfDsMap::iterator dsIter = iv_dsMap.begin();
@@ -456,15 +407,8 @@ int32_t MemIplCeStats<T>::calloutCePerDs( bool & o_callOutsMade )
continue;
// Get the CEs per dimm select threshold.
- uint16_t junk0, junk1, dsTh;
- o_rc = getMnfgMemCeTh<T>( iv_chip, dsIter->first.rank, junk0,
- junk1, dsTh );
- if ( SUCCESS != o_rc )
- {
- PRDF_ERR( PRDF_FUNC "getMnfgMemCeTh() failed. trgt:0x%08X",
- getHuid( trgt ) );
- break;
- }
+ uint32_t junk0, junk1, dsTh;
+ getMnfgMemCeTh<T>( iv_chip, dsIter->first.rank, junk0, junk1, dsTh );
// Now, check if a threshold has been reached. If not, continue to the
// next entry in iv_dsMap.
@@ -506,8 +450,8 @@ int32_t MemIplCeStats<T>::calloutCePerDs( bool & o_callOutsMade )
}
}
}
- return o_rc;
- #undef PRDF_FUNC
+
+ return o_callOutsMade;
}
//------------------------------------------------------------------------------
diff --git a/src/usr/diag/prdf/plat/mem/prdfMemIplCeStats.H b/src/usr/diag/prdf/plat/mem/prdfMemIplCeStats.H
index 04cfaaba7..846df1669 100755
--- a/src/usr/diag/prdf/plat/mem/prdfMemIplCeStats.H
+++ b/src/usr/diag/prdf/plat/mem/prdfMemIplCeStats.H
@@ -90,11 +90,9 @@ class MemIplCeStats
/**
* @brief Analyzes the maintenance statistics that were gathered, making
* the appropriate callouts.
- * @param o_callOutsDone TRUE if PRD made a hardware callout, FALSE
- * otherwise.
- * @return Non-SUCCESS if an internal function fails, SUCCESS otherwise.
+ * @return TRUE if PRD made a hardware callout, FALSE otherwise.
*/
- int32_t analyzeStats ( bool & o_callOutsDone );
+ bool analyzeStats();
/** @brief Calls out all symbols with hard CEs.
* @param i_stopRank The rank the maintenance command stopped on.
@@ -176,23 +174,20 @@ class MemIplCeStats
private: // functions
/** @brief Calls out all symbols on a dram that has exceeded threshold.
- * @param o_callOutsMade TRUE if a callout was made, FALSE othewise.
- * @return Non-SUCCESS if an internal function fails, SUCCESS othewise.
+ * @return TRUE if a callout was made, FALSE othewise.
*/
- int32_t calloutCePerDram( bool & o_callOutsMade );
+ bool calloutCePerDram();
/** @brief Calls out all symbols on a rank that has exceeded threshold.
- * @param o_callOutsMade TRUE if a callout was made, FALSE othewise.
- * @return Non-SUCCESS if an internal function fails, SUCCESS othewise.
+ * @return TRUE if a callout was made, FALSE othewise.
*/
- int32_t calloutCePerRank( bool & o_callOutsMade );
+ bool calloutCePerRank();
/** @brief Calls out all symbols on a dimm select that has exceeded
* threshold.
- * @param o_callOutsMade TRUE if a callout was made, FALSE othewise.
- * @return Non-SUCCESS if an internal function fails, SUCCESS othewise.
+ * @return TRUE if a callout was made, FALSE othewise.
*/
- int32_t calloutCePerDs( bool & o_callOutsMade );
+ bool calloutCePerDs();
/**
* @brief Add MemoryMru callout to error log and commit it.
diff --git a/src/usr/diag/prdf/plat/mem/prdfMemThresholds.C b/src/usr/diag/prdf/plat/mem/prdfMemThresholds.C
index 722378e01..55a4c2eae 100755
--- a/src/usr/diag/prdf/plat/mem/prdfMemThresholds.C
+++ b/src/usr/diag/prdf/plat/mem/prdfMemThresholds.C
@@ -91,38 +91,28 @@ ThresholdResolution::ThresholdPolicy getRceThreshold()
//------------------------------------------------------------------------------
template <TYPE T>
-int32_t getMnfgMemCeTh( ExtensibleChip * i_chip, const MemRank & i_rank,
- uint16_t & o_cePerDram, uint16_t & o_cePerHalfRank,
- uint16_t & o_cePerDimm )
+void getMnfgMemCeTh( ExtensibleChip * i_chip, const MemRank & i_rank,
+ uint32_t & o_cePerDram, uint32_t & o_cePerRank,
+ uint32_t & o_cePerDimm )
{
- #define PRDF_FUNC "[getMnfgMemCeTh] "
+ // Get base threshold ( 2GB ).
+ uint8_t baseTh = getMnfgCeTh();
- int32_t o_rc = SUCCESS;
-
- do
+ // A base threhold of 0 indicates there should be no thresholding.
+ if ( 0 == baseTh )
+ {
+ o_cePerDram = o_cePerRank = o_cePerDimm =
+ MfgThreshold::INFINITE_LIMIT_THR;
+ }
+ else
{
- // Get base threshold ( 2GB ).
- uint8_t baseTh = getMnfgCeTh();
-
- // A base threhold of 0 indicates there should be no thresholding.
- if ( 0 == baseTh )
- {
- o_cePerDram = o_cePerHalfRank = o_cePerDimm =
- MfgThreshold::INFINITE_LIMIT_THR;
- break;
- }
-
// Get DRAM size
uint8_t size = MemUtils::getDramSize<T>( i_chip, i_rank.getDimmSlct() );
// Get number of ranks per DIMM select.
- uint8_t rankCount = getNumRanksPerDimm<T>(
- i_chip->getTrgt(), i_rank.getDimmSlct() );
- if ( 0 == rankCount )
- {
- PRDF_ERR( PRDF_FUNC "PlatServices::getNumRanksPerDimm() failed" );
- o_rc = FAIL; break;
- }
+ uint8_t rankCount = getNumRanksPerDimm<T>( i_chip->getTrgt(),
+ i_rank.getDimmSlct() );
+ PRDF_ASSERT( 0 != rankCount ); // Code bug.
// Get number of allowed CEs.
uint8_t baseAllowed = baseTh - 1;
@@ -139,63 +129,51 @@ int32_t getMnfgMemCeTh( ExtensibleChip * i_chip, const MemRank & i_rank,
// Calculate CEs per DIMM.
o_cePerDimm = ((computeBase * (2 + rankCount)) + 8) / 16;
- // Calculate CEs per half-rank.
+ // Calculate CEs per rank per DIMM.
// Same as perDimm where rankCount is 1;
- o_cePerHalfRank = ((computeBase * (2 + 1)) + 8) / 16;
-
- } while (0);
-
- return o_rc;
-
- #undef PRDF_FUNC
+ o_cePerRank = ((computeBase * (2 + 1)) + 8) / 16;
+ }
}
// need these templates to avoid linker errors
-template int32_t getMnfgMemCeTh<TYPE_MCA>( ExtensibleChip * i_chip,
- const MemRank & i_rank, uint16_t & o_cePerDram,
- uint16_t & o_cePerHalfRank, uint16_t & o_cePerDimm );
-
-template int32_t getMnfgMemCeTh<TYPE_MBA>( ExtensibleChip * i_chip,
- const MemRank & i_rank, uint16_t & o_cePerDram,
- uint16_t & o_cePerHalfRank, uint16_t & o_cePerDimm );
+template
+void getMnfgMemCeTh<TYPE_MCA>( ExtensibleChip * i_chip, const MemRank & i_rank,
+ uint32_t & o_cePerDram, uint32_t & o_cePerRank,
+ uint32_t & o_cePerDimm );
+template
+void getMnfgMemCeTh<TYPE_MBA>( ExtensibleChip * i_chip, const MemRank & i_rank,
+ uint32_t & o_cePerDram, uint32_t & o_cePerRank,
+ uint32_t & o_cePerDimm );
//------------------------------------------------------------------------------
+
template <TYPE T>
-int32_t getScrubCeThreshold( ExtensibleChip * i_chip, const MemRank & i_rank,
- uint16_t & o_thr )
+uint32_t getScrubCeThreshold( ExtensibleChip * i_chip, const MemRank & i_rank )
{
- #define PRDF_FUNC "[getScrubCeThreshold] "
-
- int32_t o_rc = SUCCESS;
-
- o_thr = MBA_SCRUB_CE_NON_MNFG_TH;
+ uint32_t o_thr = MBA_SCRUB_CE_NON_MNFG_TH;
if ( mfgMode() )
{
- uint16_t junk1 = 0;
- uint16_t junk2 = 0;
+ uint32_t junk1 = 0, junk2 = 0;
- o_rc = getMnfgMemCeTh<T>( i_chip, i_rank, o_thr, junk1, junk2 );
- if ( SUCCESS != o_rc )
- PRDF_ERR( PRDF_FUNC "getMnfgMemCeTh() failed" );
+ getMnfgMemCeTh<T>( i_chip, i_rank, o_thr, junk1, junk2 );
// getMnfgMemCeTh() returns the number of CEs allowed. Will need to add
// one to get the real threshold.
o_thr++;
}
- return o_rc;
-
- #undef PRDF_FUNC
+ return o_thr;
}
// need these templates to avoid linker errors
-template int32_t getScrubCeThreshold<TYPE_MCA>( ExtensibleChip * i_chip,
- const MemRank & i_rank, uint16_t & o_thr );
-template int32_t getScrubCeThreshold<TYPE_MBA>( ExtensibleChip * i_chip,
- const MemRank & i_rank, uint16_t & o_thr );
-
+template
+uint32_t getScrubCeThreshold<TYPE_MCA>( ExtensibleChip * i_chip,
+ const MemRank & i_rank );
+template
+uint32_t getScrubCeThreshold<TYPE_MBA>( ExtensibleChip * i_chip,
+ const MemRank & i_rank );
} // end namespace PRDF
diff --git a/src/usr/diag/prdf/plat/mem/prdfMemThresholds.H b/src/usr/diag/prdf/plat/mem/prdfMemThresholds.H
index 58a2eb53f..9f4d880ba 100755
--- a/src/usr/diag/prdf/plat/mem/prdfMemThresholds.H
+++ b/src/usr/diag/prdf/plat/mem/prdfMemThresholds.H
@@ -42,17 +42,16 @@ class ExtensibleChip;
* @brief Returns number of allowed CEs for MNFG IPLs.
* @pre Must check if in manufacturing mode before calling this function.
* @post Must callout if the count is greater than the returned values.
- * @param i_chip MCA or MBA chip.
- * @param i_rank The rank for which the threshold is needed.
- * @param o_cePerDram CEs allowed per DRAM.
- * @param o_cePerHalfRank CEs allowed per logical DIMM rank.
- * @param o_cePerDimm CEs allowed per logical DIMM.
- * @return Non-SUCCESS if an internal function fails, SUCCESS otherwise.
+ * @param i_chip MCA or MBA chip.
+ * @param i_rank The rank for which the threshold is needed.
+ * @param o_cePerDram CEs allowed per DRAM.
+ * @param o_cePerRank CEs allowed per rank per logical DIMM.
+ * @param o_cePerDimm CEs allowed per logical DIMM.
*/
template <TARGETING::TYPE T>
-int32_t getMnfgMemCeTh( ExtensibleChip * i_chip, const MemRank & i_rank,
- uint16_t & o_cePerDram, uint16_t & o_cePerHalfRank,
- uint16_t & o_cePerDimm );
+void getMnfgMemCeTh( ExtensibleChip * i_chip, const MemRank & i_rank,
+ uint32_t & o_cePerDram, uint32_t & o_cePerRank,
+ uint32_t & o_cePerDimm );
/**
* @brief Returns RCE threshold policy.
@@ -61,14 +60,12 @@ ThresholdResolution::ThresholdPolicy getRceThreshold();
/**
* @brief Returns scrub soft/intermittent CEs threshold during runtime.
- * @param i_chip MCA or MBA chip.
- * @param i_rank The rank for which the threshold is needed.
- * @param o_thr Scrub soft/intermittent CE threshold.
- * @return Non-SUCCESS if an internal function fails, SUCCESS otherwise.
+ * @param i_chip MCA or MBA chip.
+ * @param i_rank The rank for which the threshold is needed.
+ * @return The Scrub soft/intermittent CE threshold.
*/
template <TARGETING::TYPE T>
-int32_t getScrubCeThreshold( ExtensibleChip * i_chip, const MemRank & i_rank,
- uint16_t & o_thr );
+uint32_t getScrubCeThreshold( ExtensibleChip * i_chip, const MemRank & i_rank );
} // end namespace PRDF
diff --git a/src/usr/diag/prdf/prdfMain_ipl.C b/src/usr/diag/prdf/prdfMain_ipl.C
index 7af6352ca..f54b8e7eb 100644
--- a/src/usr/diag/prdf/prdfMain_ipl.C
+++ b/src/usr/diag/prdf/prdfMain_ipl.C
@@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2014,2016 */
+/* Contributors Listed Below - COPYRIGHT 2014,2017 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -83,32 +83,7 @@ int32_t analyzeIplCEStats( TargetHandle_t i_mba, bool &o_calloutMade )
ExtensibleChip * mbaChip = (ExtensibleChip *)systemPtr->GetChip( i_mba );
CenMbaDataBundle * mbadb = getMbaDataBundle( mbaChip );
- o_rc = mbadb->getIplCeStats()->analyzeStats( o_calloutMade );
-
- if ( SUCCESS != o_rc )
- {
- PRDF_ERR( "[" PRDF_FUNC "] analyzeStats() failed");
-
- // Get user data
- uint64_t ud12 = PRDF_GET_UINT64_FROM_UINT32( getHuid(i_mba), 0 );
- uint64_t ud34 = PRDF_GET_UINT64_FROM_UINT32( PRDFSIG_MnfgIplFail, 0 );
-
- // Create error log
- errlHndl_t errl = new ERRORLOG::ErrlEntry(
- ERRORLOG::ERRL_SEV_PREDICTIVE, // severity
- PRDF_MNFG_IPL_CE_ANALYSIS, // module ID
- PRDF_DETECTED_FAIL_SOFTWARE, // reason code
- ud12, ud34 ); // user data 1-4
-
- // Add 2nd level support
- errl->addProcedureCallout( EPUB_PRC_LVL_SUPP, SRCI_PRIORITY_HIGH );
-
- // Add traces
- errl->collectTrace( PRDF_COMP_NAME, 512 );
-
- // Commit the error log
- ERRORLOG::errlCommit( errl, PRDF_COMP_ID );
- }
+ o_calloutMade = mbadb->getIplCeStats()->analyzeStats();
*/
PRDF_EXIT( PRDF_FUNC "(0x%08x), o_calloutMade:%u",
OpenPOWER on IntegriCloud