summaryrefslogtreecommitdiffstats
path: root/src/usr/pnor/test
diff options
context:
space:
mode:
authorChristian Geddes <crgeddes@us.ibm.com>2017-10-27 16:38:35 -0500
committerWilliam G. Hoffa <wghoffa@us.ibm.com>2017-10-31 14:33:06 -0400
commitac7f3d7b4b95342de5a692b623dba7ae4b875ec4 (patch)
treeea081be6b129458a89e2247b34e2150333151c50 /src/usr/pnor/test
parent0abd9ab92d13875ab7898847fde9e985279512b8 (diff)
downloadblackbird-hostboot-ac7f3d7b4b95342de5a692b623dba7ae4b875ec4.tar.gz
blackbird-hostboot-ac7f3d7b4b95342de5a692b623dba7ae4b875ec4.zip
Re-enable fapi2 test case module
We determined the problem to be with the getVPD test case when we tried to get the section info for the MEMD pnor section the section was not currently loaded. The reason this was sometimes passing was because the PNOR tests were loading and unloading the MEMD module. My guess was that we were getting lucking and reading MEMD while the pnor test has the section loaded Change-Id: I50c12993d639554ab919ec01bba45e5f4aae761c RTC: 181401 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/48955 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-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> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: Matt Derksen <mderkse1@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
Diffstat (limited to 'src/usr/pnor/test')
-rw-r--r--src/usr/pnor/test/pnorrptest.H212
1 files changed, 107 insertions, 105 deletions
diff --git a/src/usr/pnor/test/pnorrptest.H b/src/usr/pnor/test/pnorrptest.H
index c0267ebd2..5f1db820a 100644
--- a/src/usr/pnor/test/pnorrptest.H
+++ b/src/usr/pnor/test/pnorrptest.H
@@ -820,111 +820,113 @@ class PnorRpTest : public CxxTest::TestSuite
/**
* @brief Tests loading and unloading a secure section
*/
- void test_loadUnloadSecureSection()
- {
- // @RTC 156118 Right now these tests just ensure the
- // APIs are callable; they should return success always
- // until 156118 implements the real support. At that time
- // this testcase should be updated.
-#ifdef CONFIG_SECUREBOOT
- errlHndl_t pError=NULL;
- do {
-
- if (!PNOR::isEnforcedSecureSection(PNOR::MEMD))
- {
- break;
- }
-
- pError = PNOR::loadSecureSection(PNOR::MEMD);
- if(pError != NULL)
- {
- TS_FAIL("PnorRpTest::test_loadUnloadSecureSection: "
- "loadSecureSection returned an error");
- ERRORLOG::errlCommit(pError,PNOR_COMP_ID);
- break;
- }
-
- pError = PNOR::unloadSecureSection(PNOR::MEMD);
- if(pError != NULL)
- {
- TS_FAIL("PnorRpTest::test_loadUnloadSecureSection: "
- "unloadSecureSection returned an error");
- ERRORLOG::errlCommit(pError,PNOR_COMP_ID);
- break;
- }
-
- // try loading MEMD a few times
- for (int i=0; i<10; i++)
- {
- pError = PNOR::loadSecureSection(PNOR::MEMD);
- if(pError != nullptr)
- {
- TS_FAIL("PnorRpTest::test_loadUnloadSecureSection: "
- "loadSecureSection returned an error on MEMD section load attempt %i",i);
- break;
- }
- }
- if (pError != nullptr)
- {
- ERRORLOG::errlCommit(pError,PNOR_COMP_ID);
- break;
- }
-
-
- // try unloading MEMD the exact same number of times we loaded it
- for (int i=0; i<10; i++)
- {
- pError = PNOR::unloadSecureSection(PNOR::MEMD);
- if(pError != nullptr)
- {
- TS_FAIL("PnorRpTest::test_loadUnloadSecureSection: "
- "loadSecureSection returned an error on MEMD section unload attempt %i", i);
- break;
- }
- }
- if (pError != nullptr)
- {
- ERRORLOG::errlCommit(pError,PNOR_COMP_ID);
- break;
- }
-
- // TODO RTC 181272
- // In order for the below test to work, we need to make sure that
- // MEMD is never actually being loaded or unloaded during this test.
- // Since all of the tests run in parallel, we can't really
- // guarantee this completely if someone decides to write a test for
- // MEMD, so ideally we would need some kind of mutex to prevent this.
-
- // Try to unload the secure section one extra time
- // We expect to see an error log
- pError = PNOR::unloadSecureSection(PNOR::MEMD);
- if(pError == nullptr)
- {
- TS_FAIL("PnorRpTest::test_loadUnloadSecureSection: "
- "unloadSecureSection failed to return error on extra invoke");
- break;
- }
- else
- {
- if(pError->reasonCode() != PNOR::RC_EXTERNAL_ERROR ||
- pError->moduleId() != PNOR::MOD_PNORRP_LOADUNLOADSECURESECTION)
- {
- ERRORLOG::errlCommit(pError, PNOR_COMP_ID);
- TS_FAIL("PnorRpTest::test_loadUnloadSecureSection: "
- "unloadSecureSection return an unexpected error");
- break;
- }
- else
- {
- // passed the test
- delete pError;
- pError = nullptr;
- }
- }
-
- } while (0);
-#endif
- }
+ // TODO RTC: 181598 Test case cannot used MEMD to test loads and unloads.
+ // This test should use its own special pnor section to test this functionality.
+// void test_loadUnloadSecureSection()
+// {
+// // @RTC 156118 Right now these tests just ensure the
+// // APIs are callable; they should return success always
+// // until 156118 implements the real support. At that time
+// // this testcase should be updated.
+// #ifdef CONFIG_SECUREBOOT
+// errlHndl_t pError=NULL;
+// do {
+//
+// if (!PNOR::isEnforcedSecureSection(PNOR::MEMD))
+// {
+// break;
+// }
+//
+// pError = PNOR::loadSecureSection(PNOR::MEMD);
+// if(pError != NULL)
+// {
+// TS_FAIL("PnorRpTest::test_loadUnloadSecureSection: "
+// "loadSecureSection returned an error");
+// ERRORLOG::errlCommit(pError,PNOR_COMP_ID);
+// break;
+// }
+//
+// pError = PNOR::unloadSecureSection(PNOR::MEMD);
+// if(pError != NULL)
+// {
+// TS_FAIL("PnorRpTest::test_loadUnloadSecureSection: "
+// "unloadSecureSection returned an error");
+// ERRORLOG::errlCommit(pError,PNOR_COMP_ID);
+// break;
+// }
+//
+// // try loading MEMD a few times
+// for (int i=0; i<10; i++)
+// {
+// pError = PNOR::loadSecureSection(PNOR::MEMD);
+// if(pError != nullptr)
+// {
+// TS_FAIL("PnorRpTest::test_loadUnloadSecureSection: "
+// "loadSecureSection returned an error on MEMD section load attempt %i",i);
+// break;
+// }
+// }
+// if (pError != nullptr)
+// {
+// ERRORLOG::errlCommit(pError,PNOR_COMP_ID);
+// break;
+// }
+//
+//
+// // try unloading MEMD the exact same number of times we loaded it
+// for (int i=0; i<10; i++)
+// {
+// pError = PNOR::unloadSecureSection(PNOR::MEMD);
+// if(pError != nullptr)
+// {
+// TS_FAIL("PnorRpTest::test_loadUnloadSecureSection: "
+// "loadSecureSection returned an error on MEMD section unload attempt %i", i);
+// break;
+// }
+// }
+// if (pError != nullptr)
+// {
+// ERRORLOG::errlCommit(pError,PNOR_COMP_ID);
+// break;
+// }
+//
+// // TODO RTC 181272
+// // In order for the below test to work, we need to make sure that
+// // MEMD is never actually being loaded or unloaded during this test.
+// // Since all of the tests run in parallel, we can't really
+// // guarantee this completely if someone decides to write a test for
+// // MEMD, so ideally we would need some kind of mutex to prevent this.
+//
+// // Try to unload the secure section one extra time
+// // We expect to see an error log
+// pError = PNOR::unloadSecureSection(PNOR::MEMD);
+// if(pError == nullptr)
+// {
+// TS_FAIL("PnorRpTest::test_loadUnloadSecureSection: "
+// "unloadSecureSection failed to return error on extra invoke");
+// break;
+// }
+// else
+// {
+// if(pError->reasonCode() != PNOR::RC_EXTERNAL_ERROR ||
+// pError->moduleId() != PNOR::MOD_PNORRP_LOADUNLOADSECURESECTION)
+// {
+// ERRORLOG::errlCommit(pError, PNOR_COMP_ID);
+// TS_FAIL("PnorRpTest::test_loadUnloadSecureSection: "
+// "unloadSecureSection return an unexpected error");
+// break;
+// }
+// else
+// {
+// // passed the test
+// delete pError;
+// pError = nullptr;
+// }
+// }
+//
+// } while (0);
+// #endif
+// }
};
OpenPOWER on IntegriCloud