diff options
| author | Christian Geddes <crgeddes@us.ibm.com> | 2017-10-27 16:38:35 -0500 |
|---|---|---|
| committer | William G. Hoffa <wghoffa@us.ibm.com> | 2017-10-31 14:33:06 -0400 |
| commit | ac7f3d7b4b95342de5a692b623dba7ae4b875ec4 (patch) | |
| tree | ea081be6b129458a89e2247b34e2150333151c50 /src/usr/pnor/test | |
| parent | 0abd9ab92d13875ab7898847fde9e985279512b8 (diff) | |
| download | blackbird-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.H | 212 |
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 +// } }; |

