summaryrefslogtreecommitdiffstats
path: root/src/usr/errl/errlmanager_common.C
diff options
context:
space:
mode:
authorBrian Bakke <bbakke@us.ibm.com>2017-12-04 10:23:11 -0600
committerDaniel M. Crowell <dcrowell@us.ibm.com>2017-12-11 17:57:33 -0500
commitb98033264ca7353d7a5be17f061a5c3c5e476918 (patch)
treebf64a0be749e5c8353cc511c78fd5935be9b64f3 /src/usr/errl/errlmanager_common.C
parentb0255985c87e86701d53d850d7c51e93eaaee783 (diff)
downloadtalos-hostboot-b98033264ca7353d7a5be17f061a5c3c5e476918.tar.gz
talos-hostboot-b98033264ca7353d7a5be17f061a5c3c5e476918.zip
Increase error log size to 4K for obmc systems
Change-Id: I63f4dfd21080693aaf7eabe682fa597b40f7d77b RTC: 182608 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/50603 Reviewed-by: Matt Derksen <mderkse1@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr/errl/errlmanager_common.C')
-rw-r--r--src/usr/errl/errlmanager_common.C26
1 files changed, 23 insertions, 3 deletions
diff --git a/src/usr/errl/errlmanager_common.C b/src/usr/errl/errlmanager_common.C
index abcde7883..832b7748e 100644
--- a/src/usr/errl/errlmanager_common.C
+++ b/src/usr/errl/errlmanager_common.C
@@ -665,13 +665,33 @@ void ErrlManager::sendErrLogToBmc(errlHndl_t &io_err, bool i_sendSels)
}
// flatten into buffer, truncate to max eSEL size
+ TARGETING::Target * sys = NULL;
+ TARGETING::targetService().getTopLevelTarget( sys );
+ uint32_t l_maxBmcErrLogSize;
+
+ if ( sys &&
+ sys->tryGetAttr<TARGETING::ATTR_BMC_MAX_ERROR_LOG_SIZE>( l_maxBmcErrLogSize ) )
+ {
+ // (value was extracted from attributes)
+ }
+ else
+ {
+ // use default value for max log size
+ l_maxBmcErrLogSize = IPMISEL::ESEL_MAX_SIZE_DEFAULT;
+
+ TRACFCOMP( g_trac_errl, INFO_MRK
+ "sendErrLogToBmc: "
+ "Attribute ATTR_BMC_MAX_ERROR_LOG_SIZE not found, "
+ "ESEL_MAX_SIZE_DEFAULT used" );
+ }
+
uint32_t l_pelSize = io_err->flattenedSize();
- if (l_pelSize > (IPMISEL::ESEL_MAX_SIZE - sizeof(IPMISEL::selRecord)))
+ if (l_pelSize > (l_maxBmcErrLogSize - sizeof(IPMISEL::selRecord)))
{
TRACFCOMP( g_trac_errl, INFO_MRK
"sendErrLogToBmc: msg size %d > %d, truncating.",
- l_pelSize, IPMISEL::ESEL_MAX_SIZE);
- l_pelSize = IPMISEL::ESEL_MAX_SIZE - sizeof(IPMISEL::selRecord);
+ l_pelSize, l_maxBmcErrLogSize);
+ l_pelSize = l_maxBmcErrLogSize - sizeof(IPMISEL::selRecord);
}
uint8_t *l_pelData = new uint8_t[l_pelSize];
OpenPOWER on IntegriCloud