summaryrefslogtreecommitdiffstats
path: root/src/usr/vpd
diff options
context:
space:
mode:
authorcrgeddes <crgeddes@us.ibm.com>2016-10-14 11:00:00 -0500
committerMatthew A. Ploetz <maploetz@us.ibm.com>2016-11-10 15:47:27 -0500
commit764ba99a40a501f8678de058319ecda85c8ec41d (patch)
treec395105522d3033591443a6cdab0bc8518e737f4 /src/usr/vpd
parentd4d316443eb780822ffb39f0ceeac964ffdd5a01 (diff)
downloadtalos-hostboot-764ba99a40a501f8678de058319ecda85c8ec41d.tar.gz
talos-hostboot-764ba99a40a501f8678de058319ecda85c8ec41d.zip
Re-enable error catching for missing VPD records
We put a hack in temporarily to allow MEMD records to be read without a TOC. This hack needs to be removed when the VPD generation tools get updated to add in the TOC for MEMD records Change-Id: I66ff6509161219ab043ab84ecf5dba84f16fe6da RTC: 162329 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/31246 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Matt Derksen <v2cibmd@us.ibm.com> Reviewed-by: Martin Gloff <mgloff@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Matthew A. Ploetz <maploetz@us.ibm.com>
Diffstat (limited to 'src/usr/vpd')
-rw-r--r--src/usr/vpd/ipvpd.C70
1 files changed, 30 insertions, 40 deletions
diff --git a/src/usr/vpd/ipvpd.C b/src/usr/vpd/ipvpd.C
index be79f83c3..47fdd21a5 100644
--- a/src/usr/vpd/ipvpd.C
+++ b/src/usr/vpd/ipvpd.C
@@ -1085,49 +1085,39 @@ errlHndl_t IpVpdFacade::findRecordOffsetPnor ( const char * i_record,
"No matching Record (%s) found in TOC!",
i_record );
- // TODO RTC: 162329 Ignore missing records because some records are
- // currently missing the Table of Contents are their start
- if (!((* i_record == 'M') &&
- (*(i_record + 1) == 'E') &&
- (*(i_record + 2) == 'M') &&
- (*(i_record + 3) == 'D') ))
- {
- /*@
- * @errortype
- * @reasoncode VPD::VPD_RECORD_NOT_FOUND
- * @severity ERRORLOG::ERRL_SEV_UNRECOVERABLE
- * @moduleid VPD::VPD_IPVPD_FIND_RECORD_OFFSET
- * @userdata1 Requested Record
- * @userdata2 Requested Keyword
- * @devdesc The requested record was not found in the VPD TOC.
- */
- err = new ERRORLOG::ErrlEntry( ERRORLOG::ERRL_SEV_UNRECOVERABLE,
- VPD::VPD_IPVPD_FIND_RECORD_OFFSET,
- VPD::VPD_RECORD_NOT_FOUND,
- i_args.record,
- i_args.keyword );
+ /*@
+ * @errortype
+ * @reasoncode VPD::VPD_RECORD_NOT_FOUND
+ * @severity ERRORLOG::ERRL_SEV_UNRECOVERABLE
+ * @moduleid VPD::VPD_IPVPD_FIND_RECORD_OFFSET
+ * @userdata1 Requested Record
+ * @userdata2 Requested Keyword
+ * @devdesc The requested record was not found in the VPD TOC.
+ */
+ err = new ERRORLOG::ErrlEntry( ERRORLOG::ERRL_SEV_UNRECOVERABLE,
+ VPD::VPD_IPVPD_FIND_RECORD_OFFSET,
+ VPD::VPD_RECORD_NOT_FOUND,
+ i_args.record,
+ i_args.keyword );
- // Could be the VPD of the target wasn't set up properly
- // -- DECONFIG so that we can possibly keep booting
- err->addHwCallout( i_target,
- HWAS::SRCI_PRIORITY_HIGH,
- HWAS::DECONFIG,
- HWAS::GARD_NULL );
- // Or FSP code didn't set up the VPD properly
- err->addProcedureCallout(HWAS::EPUB_PRC_SP_CODE,
- HWAS::SRCI_PRIORITY_MED);
+ // Could be the VPD of the target wasn't set up properly
+ // -- DECONFIG so that we can possibly keep booting
+ err->addHwCallout( i_target,
+ HWAS::SRCI_PRIORITY_HIGH,
+ HWAS::DECONFIG,
+ HWAS::GARD_NULL );
+ // Or FSP code didn't set up the VPD properly
+ err->addProcedureCallout(HWAS::EPUB_PRC_SP_CODE,
+ HWAS::SRCI_PRIORITY_MED);
+
+ // Or HB code didn't look for the record properly
+ err->addProcedureCallout(HWAS::EPUB_PRC_HB_CODE,
+ HWAS::SRCI_PRIORITY_LOW);
+
+ // Add trace to the log so we know what record was being requested.
+ err->collectTrace( "VPD", 256 );
- // Or HB code didn't look for the record properly
- err->addProcedureCallout(HWAS::EPUB_PRC_HB_CODE,
- HWAS::SRCI_PRIORITY_LOW);
- // Add trace to the log so we know what record was being requested.
- err->collectTrace( "VPD", 256 );
- }
- else
- {
- TRACFCOMP(g_trac_vpd, ERR_MRK"No TOC on MEMD record, assuming offset to be 0!");
- }
}
// Return the offset found, after byte swapping it.
OpenPOWER on IntegriCloud