summaryrefslogtreecommitdiffstats
path: root/src/usr/hwas/test/hwasGardTest.H
diff options
context:
space:
mode:
authorStephen Cprek <smcprek@us.ibm.com>2014-04-01 13:39:07 -0500
committerA. Patrick Williams III <iawillia@us.ibm.com>2014-04-03 15:06:30 -0500
commit31998dac459abd6e49857697b07cbce8af43cadf (patch)
treecc254459f990f8a643f1bb6739304ea21287df47 /src/usr/hwas/test/hwasGardTest.H
parentcadf4e34157e599e1352de1d93ec406f3a2759a9 (diff)
downloadtalos-hostboot-31998dac459abd6e49857697b07cbce8af43cadf.tar.gz
talos-hostboot-31998dac459abd6e49857697b07cbce8af43cadf.zip
Changed _invokeDeconfigureAssocProc to push an instance directly
Before invoke declared new instances causing too much memory alloc work. Also short circuited "found chip" loop Change-Id: I60c23e8beff72fca8174808aff3b9bb70a5aa5b6 RTC: 86191 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/10034 Tested-by: Jenkins Server Reviewed-by: Brian H. Horton <brianh@linux.ibm.com> Reviewed-by: Donald E. Dahle <dedahle@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/usr/hwas/test/hwasGardTest.H')
-rw-r--r--src/usr/hwas/test/hwasGardTest.H1013
1 files changed, 485 insertions, 528 deletions
diff --git a/src/usr/hwas/test/hwasGardTest.H b/src/usr/hwas/test/hwasGardTest.H
index 96d0f0c3f..5ed0c50a9 100644
--- a/src/usr/hwas/test/hwasGardTest.H
+++ b/src/usr/hwas/test/hwasGardTest.H
@@ -146,6 +146,7 @@ public:
/**
* @brief Test Deconfiguring a Target directly
*/
+
void testDeconfigure3()
{
TS_TRACE(INFO_MRK "testDeconfigure3: Started");
@@ -1786,72 +1787,69 @@ public:
errlHndl_t l_pErr = NULL;
// User-defined number of procs
- uint8_t NUM_PROCS = 4;
+ size_t NUM_PROCS = 4;
// Define and populate vector
- std::vector<DeconfigGard::ProcInfo *> l_tuletaProcs(NUM_PROCS);
-
- for (uint8_t i = 0; i < NUM_PROCS; i++)
- {
- l_tuletaProcs[i] = new DeconfigGard::ProcInfo();
- }
+ DeconfigGard::ProcInfoVector l_tuletaProcs;
+ DeconfigGard::ProcInfo l_ProcInfo = DeconfigGard::ProcInfo();
+ l_tuletaProcs.insert(l_tuletaProcs.begin(), NUM_PROCS, l_ProcInfo);
// Set proc options
// Proc0:
- l_tuletaProcs[0]->iv_pThisProc = NULL; // Target *
- l_tuletaProcs[0]->procHUID = 0; // HUID
- l_tuletaProcs[0]->procFabricNode = 0; // FABRIC_NODE_ID
- l_tuletaProcs[0]->procFabricChip = 0; // FABRIC_CHIP_ID
- l_tuletaProcs[0]->iv_isMaster = true; // Master proc
- l_tuletaProcs[0]->iv_deconfigured = false; // HWAS state
+ l_tuletaProcs[0].iv_pThisProc = NULL; // Target *
+ l_tuletaProcs[0].procHUID = 0; // HUID
+ l_tuletaProcs[0].procFabricNode = 0; // FABRIC_NODE_ID
+ l_tuletaProcs[0].procFabricChip = 0; // FABRIC_CHIP_ID
+ l_tuletaProcs[0].iv_isMaster = true; // Master proc
+ l_tuletaProcs[0].iv_deconfigured = false; // HWAS state
// ABus links and states
// abus1 and 2 linked to proc2
- l_tuletaProcs[0]->iv_pAProcs[0] = l_tuletaProcs[2];
- l_tuletaProcs[0]->iv_pAProcs[1] = l_tuletaProcs[2];
+ l_tuletaProcs[0].iv_pAProcs[0] = &l_tuletaProcs[2];
+ l_tuletaProcs[0].iv_pAProcs[1] = &l_tuletaProcs[2];
// abus1 endpoint deconfigured
- l_tuletaProcs[0]->iv_ADeconfigured[0] = true;
+ l_tuletaProcs[0].iv_ADeconfigured[0] = true;
// XBus links and states
- l_tuletaProcs[0]->iv_pXProcs[0] = l_tuletaProcs[1];
+ l_tuletaProcs[0].iv_pXProcs[0] = &l_tuletaProcs[1];
// Proc1:
- l_tuletaProcs[1]->iv_pThisProc = NULL; // Target *
- l_tuletaProcs[1]->procHUID = 1; // HUID
- l_tuletaProcs[1]->procFabricNode = 0; // FABRIC_NODE_ID
- l_tuletaProcs[1]->procFabricChip = 1; // FABRIC_CHIP_ID
- l_tuletaProcs[1]->iv_isMaster = false; // Not master proc
- l_tuletaProcs[1]->iv_deconfigured = false; // HWAS state
+ l_tuletaProcs[1].iv_pThisProc = NULL; // Target *
+ l_tuletaProcs[1].procHUID = 1; // HUID
+ l_tuletaProcs[1].procFabricNode = 0; // FABRIC_NODE_ID
+ l_tuletaProcs[1].procFabricChip = 1; // FABRIC_CHIP_ID
+ l_tuletaProcs[1].iv_isMaster = false; // Not master proc
+ l_tuletaProcs[1].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_tuletaProcs[1]->iv_pAProcs[0] = l_tuletaProcs[3];
- l_tuletaProcs[1]->iv_pAProcs[1] = l_tuletaProcs[3];
+ l_tuletaProcs[1].iv_pAProcs[0] = &l_tuletaProcs[3];
+ l_tuletaProcs[1].iv_pAProcs[1] = &l_tuletaProcs[3];
// XBus links and states
- l_tuletaProcs[1]->iv_pXProcs[0] = l_tuletaProcs[0];
+ l_tuletaProcs[1].iv_pXProcs[0] = &l_tuletaProcs[0];
// Proc2:
- l_tuletaProcs[2]->iv_pThisProc = NULL; // Target *
- l_tuletaProcs[2]->procHUID = 2; // HUID
- l_tuletaProcs[2]->procFabricNode = 1; // FABRIC_NODE_ID
- l_tuletaProcs[2]->procFabricChip = 0; // FABRIC_CHIP_ID
- l_tuletaProcs[2]->iv_isMaster = false; // Not master proc
- l_tuletaProcs[2]->iv_deconfigured = false; // HWAS state
+ l_tuletaProcs[2].iv_pThisProc = NULL; // Target *
+ l_tuletaProcs[2].procHUID = 2; // HUID
+ l_tuletaProcs[2].procFabricNode = 1; // FABRIC_NODE_ID
+ l_tuletaProcs[2].procFabricChip = 0; // FABRIC_CHIP_ID
+ l_tuletaProcs[2].iv_isMaster = false; // Not master proc
+ l_tuletaProcs[2].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_tuletaProcs[2]->iv_pAProcs[0] = l_tuletaProcs[0];
- l_tuletaProcs[2]->iv_pAProcs[1] = l_tuletaProcs[0];
- l_tuletaProcs[2]->iv_ADeconfigured[0] = true;
+ l_tuletaProcs[2].iv_pAProcs[0] = &l_tuletaProcs[0];
+ l_tuletaProcs[2].iv_pAProcs[1] = &l_tuletaProcs[0];
+ l_tuletaProcs[2].iv_ADeconfigured[0] = true;
// XBus links and states
- l_tuletaProcs[2]->iv_pXProcs[0] = l_tuletaProcs[3];
+ l_tuletaProcs[2].iv_pXProcs[0] = &l_tuletaProcs[3];
// Proc3:
- l_tuletaProcs[3]->iv_pThisProc = NULL; // Target *
- l_tuletaProcs[3]->procHUID = 3; // HUID
- l_tuletaProcs[3]->procFabricNode = 1; // FABRIC_NODE_ID
- l_tuletaProcs[3]->procFabricChip = 1; // FABRIC_CHIP_ID
- l_tuletaProcs[3]->iv_isMaster = false; // Not master proc
- l_tuletaProcs[3]->iv_deconfigured = false; // HWAS state
+ l_tuletaProcs[3].iv_pThisProc = NULL; // Target *
+ l_tuletaProcs[3].procHUID = 3; // HUID
+ l_tuletaProcs[3].procFabricNode = 1; // FABRIC_NODE_ID
+ l_tuletaProcs[3].procFabricChip = 1; // FABRIC_CHIP_ID
+ l_tuletaProcs[3].iv_isMaster = false; // Not master proc
+ l_tuletaProcs[3].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_tuletaProcs[3]->iv_pAProcs[0] = l_tuletaProcs[1];
- l_tuletaProcs[3]->iv_pAProcs[1] = l_tuletaProcs[2];
+ l_tuletaProcs[3].iv_pAProcs[0] = &l_tuletaProcs[1];
+ l_tuletaProcs[3].iv_pAProcs[1] = &l_tuletaProcs[2];
// XBus links and states
- l_tuletaProcs[3]->iv_pXProcs[0] = l_tuletaProcs[2];
+ l_tuletaProcs[3].iv_pXProcs[0] = &l_tuletaProcs[2];
// Call _deconfigureAssocProc to determine which procs
// should be deconfigured based on state of system passed in
@@ -1862,10 +1860,10 @@ public:
}
// Check result
- if (l_tuletaProcs[0]->iv_deconfigured == false &&
- l_tuletaProcs[1]->iv_deconfigured == false &&
- l_tuletaProcs[2]->iv_deconfigured == true &&
- l_tuletaProcs[3]->iv_deconfigured == true)
+ if (l_tuletaProcs[0].iv_deconfigured == false &&
+ l_tuletaProcs[1].iv_deconfigured == false &&
+ l_tuletaProcs[2].iv_deconfigured == true &&
+ l_tuletaProcs[3].iv_deconfigured == true)
{
TS_TRACE(INFO_MRK "testDeconfigureAssocProc1: Success");
}
@@ -1873,9 +1871,6 @@ public:
{
TS_FAIL("testDeconfigureAssocProc1: incorrect configuration returned");
}
- // Free previously allocated memory
- while(!l_tuletaProcs.empty()) delete l_tuletaProcs.back(),
- l_tuletaProcs.pop_back();
}
@@ -1901,69 +1896,66 @@ public:
errlHndl_t l_pErr = NULL;
// User-defined number of procs
- uint8_t NUM_PROCS = 4;
+ size_t NUM_PROCS = 4;
// Define and populate vector
- std::vector<DeconfigGard::ProcInfo *> l_tuletaProcs(NUM_PROCS);
-
- for (uint8_t i = 0; i < NUM_PROCS; i++)
- {
- l_tuletaProcs[i] = new DeconfigGard::ProcInfo();
- }
+ DeconfigGard::ProcInfoVector l_tuletaProcs;
+ DeconfigGard::ProcInfo l_ProcInfo = DeconfigGard::ProcInfo();
+ l_tuletaProcs.insert(l_tuletaProcs.begin(), NUM_PROCS, l_ProcInfo);
// Proc0:
- l_tuletaProcs[0]->iv_pThisProc = NULL; // Target *
- l_tuletaProcs[0]->procHUID = 0; // HUID
- l_tuletaProcs[0]->procFabricNode = 0; // FABRIC_NODE_ID
- l_tuletaProcs[0]->procFabricChip = 0; // FABRIC_CHIP_ID
- l_tuletaProcs[0]->iv_isMaster = false; // Note master proc
- l_tuletaProcs[0]->iv_deconfigured = false; // HWAS state
+ l_tuletaProcs[0].iv_pThisProc = NULL; // Target *
+ l_tuletaProcs[0].procHUID = 0; // HUID
+ l_tuletaProcs[0].procFabricNode = 0; // FABRIC_NODE_ID
+ l_tuletaProcs[0].procFabricChip = 0; // FABRIC_CHIP_ID
+ l_tuletaProcs[0].iv_isMaster = false; // Note master proc
+ l_tuletaProcs[0].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_tuletaProcs[0]->iv_pAProcs[0] = l_tuletaProcs[2];
- l_tuletaProcs[0]->iv_pAProcs[1] = l_tuletaProcs[2];
+ l_tuletaProcs[0].iv_pAProcs[0] = &l_tuletaProcs[2];
+ l_tuletaProcs[0].iv_pAProcs[1] = &l_tuletaProcs[2];
// XBus links and states
- l_tuletaProcs[0]->iv_pXProcs[0] = l_tuletaProcs[1];
+ l_tuletaProcs[0].iv_pXProcs[0] = &l_tuletaProcs[1];
// Proc1:
- l_tuletaProcs[1]->iv_pThisProc = NULL; // Target *
- l_tuletaProcs[1]->procHUID = 1; // HUID
- l_tuletaProcs[1]->procFabricNode = 0; // FABRIC_NODE_ID
- l_tuletaProcs[1]->procFabricChip = 1; // FABRIC_CHIP_ID
- l_tuletaProcs[1]->iv_isMaster = false; // Not master proc
- l_tuletaProcs[1]->iv_deconfigured = false; // HWAS state
+ l_tuletaProcs[1].iv_pThisProc = NULL; // Target *
+ l_tuletaProcs[1].procHUID = 1; // HUID
+ l_tuletaProcs[1].procFabricNode = 0; // FABRIC_NODE_ID
+ l_tuletaProcs[1].procFabricChip = 1; // FABRIC_CHIP_ID
+ l_tuletaProcs[1].iv_isMaster = false; // Not master proc
+ l_tuletaProcs[1].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_tuletaProcs[1]->iv_pAProcs[0] = l_tuletaProcs[3];
- l_tuletaProcs[1]->iv_pAProcs[1] = l_tuletaProcs[3];
+ l_tuletaProcs[1].iv_pAProcs[0] = &l_tuletaProcs[3];
+ l_tuletaProcs[1].iv_pAProcs[1] = &l_tuletaProcs[3];
// XBus links and states
- l_tuletaProcs[1]->iv_pXProcs[0] = l_tuletaProcs[0];
+ l_tuletaProcs[1].iv_pXProcs[0] = &l_tuletaProcs[0];
// Proc2:
- l_tuletaProcs[2]->iv_pThisProc = NULL; // Target *
- l_tuletaProcs[2]->procHUID = 2; // HUID
- l_tuletaProcs[2]->procFabricNode = 1; // FABRIC_NODE_ID
- l_tuletaProcs[2]->procFabricChip = 0; // FABRIC_CHIP_ID
- l_tuletaProcs[2]->iv_isMaster = true; // Master proc
- l_tuletaProcs[2]->iv_deconfigured = false; // HWAS state
+ l_tuletaProcs[2].iv_pThisProc = NULL; // Target *
+ l_tuletaProcs[2].procHUID = 2; // HUID
+ l_tuletaProcs[2].procFabricNode = 1; // FABRIC_NODE_ID
+ l_tuletaProcs[2].procFabricChip = 0; // FABRIC_CHIP_ID
+ l_tuletaProcs[2].iv_isMaster = true; // Master proc
+ l_tuletaProcs[2].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_tuletaProcs[2]->iv_pAProcs[0] = l_tuletaProcs[0];
- l_tuletaProcs[2]->iv_pAProcs[1] = l_tuletaProcs[0];
+ l_tuletaProcs[2].iv_pAProcs[0] = &l_tuletaProcs[0];
+ l_tuletaProcs[2].iv_pAProcs[1] = &l_tuletaProcs[0];
// XBus links and states
- l_tuletaProcs[2]->iv_pXProcs[0] = l_tuletaProcs[3];
- l_tuletaProcs[2]->iv_XDeconfigured[0] = true;
+ l_tuletaProcs[2].iv_pXProcs[0] = &l_tuletaProcs[3];
+ l_tuletaProcs[2].iv_XDeconfigured[0] = true;
// Proc3:
- l_tuletaProcs[3]->iv_pThisProc = NULL; // Target *
- l_tuletaProcs[3]->procHUID = 3; // HUID
- l_tuletaProcs[3]->procFabricNode = 1; // FABRIC_NODE_ID
- l_tuletaProcs[3]->procFabricChip = 1; // FABRIC_CHIP_ID
- l_tuletaProcs[3]->iv_isMaster = false; // Not master proc
- l_tuletaProcs[3]->iv_deconfigured = false; // HWAS state
+ l_tuletaProcs[3].iv_pThisProc = NULL; // Target *
+ l_tuletaProcs[3].procHUID = 3; // HUID
+ l_tuletaProcs[3].procFabricNode = 1; // FABRIC_NODE_ID
+ l_tuletaProcs[3].procFabricChip = 1; // FABRIC_CHIP_ID
+ l_tuletaProcs[3].iv_isMaster = false; // Not master proc
+ l_tuletaProcs[3].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_tuletaProcs[3]->iv_pAProcs[0] = l_tuletaProcs[1];
- l_tuletaProcs[3]->iv_pAProcs[1] = l_tuletaProcs[1];
+ l_tuletaProcs[3].iv_pAProcs[0] = &l_tuletaProcs[1];
+ l_tuletaProcs[3].iv_pAProcs[1] = &l_tuletaProcs[1];
// XBus links and states
- l_tuletaProcs[3]->iv_pXProcs[0] = l_tuletaProcs[2];
- l_tuletaProcs[3]->iv_XDeconfigured[0] = true;
+ l_tuletaProcs[3].iv_pXProcs[0] = &l_tuletaProcs[2];
+ l_tuletaProcs[3].iv_XDeconfigured[0] = true;
// Call _deconfigureAssocProc to determine which procs
// should be deconfigured based on state of system passed in
@@ -1974,10 +1966,10 @@ public:
}
// Check result
- if (l_tuletaProcs[0]->iv_deconfigured == false &&
- l_tuletaProcs[1]->iv_deconfigured == true &&
- l_tuletaProcs[2]->iv_deconfigured == false &&
- l_tuletaProcs[3]->iv_deconfigured == true)
+ if (l_tuletaProcs[0].iv_deconfigured == false &&
+ l_tuletaProcs[1].iv_deconfigured == true &&
+ l_tuletaProcs[2].iv_deconfigured == false &&
+ l_tuletaProcs[3].iv_deconfigured == true)
{
TS_TRACE(INFO_MRK "testDeconfigureAssocProc2: Success");
}
@@ -1985,9 +1977,6 @@ public:
{
TS_FAIL("testDeconfigureAssocProc2: incorrect configuration returned");
}
- // Free previously allocated memory
- while(!l_tuletaProcs.empty()) delete l_tuletaProcs.back(),
- l_tuletaProcs.pop_back();
}
/**
@@ -2011,129 +2000,126 @@ public:
errlHndl_t l_pErr = NULL;
// User-defined number of procs
- uint8_t NUM_PROCS = 8;
+ size_t NUM_PROCS = 8;
// Define and populate vector
- std::vector<DeconfigGard::ProcInfo *> l_orlenaProcs(NUM_PROCS);
-
- for (uint8_t i = 0; i < NUM_PROCS; i++)
- {
- l_orlenaProcs[i] = new DeconfigGard::ProcInfo();
- }
+ DeconfigGard::ProcInfoVector l_orlenaProcs;
+ DeconfigGard::ProcInfo l_ProcInfo = DeconfigGard::ProcInfo();
+ l_orlenaProcs.insert(l_orlenaProcs.begin(), NUM_PROCS, l_ProcInfo);
// Proc0:
- l_orlenaProcs[0]->iv_pThisProc = NULL; // Target *
- l_orlenaProcs[0]->procHUID = 0; // HUID
- l_orlenaProcs[0]->procFabricNode = 0; // FABRIC_NODE_ID
- l_orlenaProcs[0]->procFabricChip = 0; // FABRIC_CHIP_ID
- l_orlenaProcs[0]->iv_isMaster = true; // Master proc
- l_orlenaProcs[0]->iv_deconfigured = false; // HWAS state
+ l_orlenaProcs[0].iv_pThisProc = NULL; // Target *
+ l_orlenaProcs[0].procHUID = 0; // HUID
+ l_orlenaProcs[0].procFabricNode = 0; // FABRIC_NODE_ID
+ l_orlenaProcs[0].procFabricChip = 0; // FABRIC_CHIP_ID
+ l_orlenaProcs[0].iv_isMaster = true; // Master proc
+ l_orlenaProcs[0].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_orlenaProcs[0]->iv_pAProcs[0] = l_orlenaProcs[2];
- l_orlenaProcs[0]->iv_pAProcs[1] = l_orlenaProcs[4];
- l_orlenaProcs[0]->iv_pAProcs[2] = l_orlenaProcs[6];
+ l_orlenaProcs[0].iv_pAProcs[0] = &l_orlenaProcs[2];
+ l_orlenaProcs[0].iv_pAProcs[1] = &l_orlenaProcs[4];
+ l_orlenaProcs[0].iv_pAProcs[2] = &l_orlenaProcs[6];
// XBus links and states
- l_orlenaProcs[0]->iv_pXProcs[0] = l_orlenaProcs[1];
- l_orlenaProcs[0]->iv_XDeconfigured[0] = true;
+ l_orlenaProcs[0].iv_pXProcs[0] = &l_orlenaProcs[1];
+ l_orlenaProcs[0].iv_XDeconfigured[0] = true;
// Proc1:
- l_orlenaProcs[1]->iv_pThisProc = NULL; // Target *
- l_orlenaProcs[1]->procHUID = 1; // HUID
- l_orlenaProcs[1]->procFabricNode = 0; // FABRIC_NODE_ID
- l_orlenaProcs[1]->procFabricChip = 1; // FABRIC_CHIP_ID
- l_orlenaProcs[1]->iv_isMaster = false; // Not master proc
- l_orlenaProcs[1]->iv_deconfigured = false; // HWAS state
+ l_orlenaProcs[1].iv_pThisProc = NULL; // Target *
+ l_orlenaProcs[1].procHUID = 1; // HUID
+ l_orlenaProcs[1].procFabricNode = 0; // FABRIC_NODE_ID
+ l_orlenaProcs[1].procFabricChip = 1; // FABRIC_CHIP_ID
+ l_orlenaProcs[1].iv_isMaster = false; // Not master proc
+ l_orlenaProcs[1].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_orlenaProcs[1]->iv_pAProcs[0] = l_orlenaProcs[5];
- l_orlenaProcs[1]->iv_pAProcs[1] = l_orlenaProcs[7];
- l_orlenaProcs[1]->iv_pAProcs[2] = l_orlenaProcs[3];
+ l_orlenaProcs[1].iv_pAProcs[0] = &l_orlenaProcs[5];
+ l_orlenaProcs[1].iv_pAProcs[1] = &l_orlenaProcs[7];
+ l_orlenaProcs[1].iv_pAProcs[2] = &l_orlenaProcs[3];
// XBus links and states
- l_orlenaProcs[1]->iv_pXProcs[0] = l_orlenaProcs[0];
- l_orlenaProcs[1]->iv_XDeconfigured[0] = true;
+ l_orlenaProcs[1].iv_pXProcs[0] = &l_orlenaProcs[0];
+ l_orlenaProcs[1].iv_XDeconfigured[0] = true;
// Proc2:
- l_orlenaProcs[2]->iv_pThisProc = NULL; // Target *
- l_orlenaProcs[2]->procHUID = 2; // HUID
- l_orlenaProcs[2]->procFabricNode = 1; // FABRIC_NODE_ID
- l_orlenaProcs[2]->procFabricChip = 0; // FABRIC_CHIP_ID
- l_orlenaProcs[2]->iv_isMaster = false; // Not master proc
- l_orlenaProcs[2]->iv_deconfigured = false; // HWAS state
+ l_orlenaProcs[2].iv_pThisProc = NULL; // Target *
+ l_orlenaProcs[2].procHUID = 2; // HUID
+ l_orlenaProcs[2].procFabricNode = 1; // FABRIC_NODE_ID
+ l_orlenaProcs[2].procFabricChip = 0; // FABRIC_CHIP_ID
+ l_orlenaProcs[2].iv_isMaster = false; // Not master proc
+ l_orlenaProcs[2].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_orlenaProcs[2]->iv_pAProcs[0] = l_orlenaProcs[0];
- l_orlenaProcs[2]->iv_pAProcs[1] = l_orlenaProcs[6];
- l_orlenaProcs[2]->iv_pAProcs[2] = l_orlenaProcs[4];
+ l_orlenaProcs[2].iv_pAProcs[0] = &l_orlenaProcs[0];
+ l_orlenaProcs[2].iv_pAProcs[1] = &l_orlenaProcs[6];
+ l_orlenaProcs[2].iv_pAProcs[2] = &l_orlenaProcs[4];
// XBus links and states
- l_orlenaProcs[2]->iv_pXProcs[0] = l_orlenaProcs[3];
+ l_orlenaProcs[2].iv_pXProcs[0] = &l_orlenaProcs[3];
// Proc3:
- l_orlenaProcs[3]->iv_pThisProc = NULL; // Target *
- l_orlenaProcs[3]->procHUID = 3; // HUID
- l_orlenaProcs[3]->procFabricNode = 1; // FABRIC_NODE_ID
- l_orlenaProcs[3]->procFabricChip = 1; // FABRIC_CHIP_ID
- l_orlenaProcs[3]->iv_isMaster = false; // Not master proc
- l_orlenaProcs[3]->iv_deconfigured = false; // HWAS state
+ l_orlenaProcs[3].iv_pThisProc = NULL; // Target *
+ l_orlenaProcs[3].procHUID = 3; // HUID
+ l_orlenaProcs[3].procFabricNode = 1; // FABRIC_NODE_ID
+ l_orlenaProcs[3].procFabricChip = 1; // FABRIC_CHIP_ID
+ l_orlenaProcs[3].iv_isMaster = false; // Not master proc
+ l_orlenaProcs[3].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_orlenaProcs[3]->iv_pAProcs[0] = l_orlenaProcs[7];
- l_orlenaProcs[3]->iv_pAProcs[1] = l_orlenaProcs[5];
- l_orlenaProcs[3]->iv_pAProcs[2] = l_orlenaProcs[1];
+ l_orlenaProcs[3].iv_pAProcs[0] = &l_orlenaProcs[7];
+ l_orlenaProcs[3].iv_pAProcs[1] = &l_orlenaProcs[5];
+ l_orlenaProcs[3].iv_pAProcs[2] = &l_orlenaProcs[1];
// XBus links and states
- l_orlenaProcs[3]->iv_pXProcs[0] = l_orlenaProcs[2];
+ l_orlenaProcs[3].iv_pXProcs[0] = &l_orlenaProcs[2];
// Proc4:
- l_orlenaProcs[4]->iv_pThisProc = NULL; // Target *
- l_orlenaProcs[4]->procHUID = 4; // HUID
- l_orlenaProcs[4]->procFabricNode = 2; // FABRIC_NODE_ID
- l_orlenaProcs[4]->procFabricChip = 0; // FABRIC_CHIP_ID
- l_orlenaProcs[4]->iv_isMaster = false; // Master proc
- l_orlenaProcs[4]->iv_deconfigured = false; // HWAS state
+ l_orlenaProcs[4].iv_pThisProc = NULL; // Target *
+ l_orlenaProcs[4].procHUID = 4; // HUID
+ l_orlenaProcs[4].procFabricNode = 2; // FABRIC_NODE_ID
+ l_orlenaProcs[4].procFabricChip = 0; // FABRIC_CHIP_ID
+ l_orlenaProcs[4].iv_isMaster = false; // Master proc
+ l_orlenaProcs[4].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_orlenaProcs[4]->iv_pAProcs[0] = l_orlenaProcs[6];
- l_orlenaProcs[4]->iv_pAProcs[1] = l_orlenaProcs[0];
- l_orlenaProcs[4]->iv_pAProcs[2] = l_orlenaProcs[2];
+ l_orlenaProcs[4].iv_pAProcs[0] = &l_orlenaProcs[6];
+ l_orlenaProcs[4].iv_pAProcs[1] = &l_orlenaProcs[0];
+ l_orlenaProcs[4].iv_pAProcs[2] = &l_orlenaProcs[2];
// XBus links and states
- l_orlenaProcs[4]->iv_pXProcs[0] = l_orlenaProcs[5];
+ l_orlenaProcs[4].iv_pXProcs[0] = &l_orlenaProcs[5];
// Proc5:
- l_orlenaProcs[5]->iv_pThisProc = NULL; // Target *
- l_orlenaProcs[5]->procHUID = 5; // HUID
- l_orlenaProcs[5]->procFabricNode = 2; // FABRIC_NODE_ID
- l_orlenaProcs[5]->procFabricChip = 1; // FABRIC_CHIP_ID
- l_orlenaProcs[5]->iv_isMaster = false; // Not master proc
- l_orlenaProcs[5]->iv_deconfigured = false; // HWAS state
+ l_orlenaProcs[5].iv_pThisProc = NULL; // Target *
+ l_orlenaProcs[5].procHUID = 5; // HUID
+ l_orlenaProcs[5].procFabricNode = 2; // FABRIC_NODE_ID
+ l_orlenaProcs[5].procFabricChip = 1; // FABRIC_CHIP_ID
+ l_orlenaProcs[5].iv_isMaster = false; // Not master proc
+ l_orlenaProcs[5].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_orlenaProcs[5]->iv_pAProcs[0] = l_orlenaProcs[1];
- l_orlenaProcs[5]->iv_pAProcs[1] = l_orlenaProcs[3];
- l_orlenaProcs[5]->iv_pAProcs[2] = l_orlenaProcs[7];
+ l_orlenaProcs[5].iv_pAProcs[0] = &l_orlenaProcs[1];
+ l_orlenaProcs[5].iv_pAProcs[1] = &l_orlenaProcs[3];
+ l_orlenaProcs[5].iv_pAProcs[2] = &l_orlenaProcs[7];
// XBus links and states
- l_orlenaProcs[5]->iv_pXProcs[0] = l_orlenaProcs[4];
+ l_orlenaProcs[5].iv_pXProcs[0] = &l_orlenaProcs[4];
// Proc6:
- l_orlenaProcs[6]->iv_pThisProc = NULL; // Target *
- l_orlenaProcs[6]->procHUID = 6; // HUID
- l_orlenaProcs[6]->procFabricNode = 3; // FABRIC_NODE_ID
- l_orlenaProcs[6]->procFabricChip = 0; // FABRIC_CHIP_ID
- l_orlenaProcs[6]->iv_isMaster = false; // Not master proc
- l_orlenaProcs[6]->iv_deconfigured = false; // HWAS state
+ l_orlenaProcs[6].iv_pThisProc = NULL; // Target *
+ l_orlenaProcs[6].procHUID = 6; // HUID
+ l_orlenaProcs[6].procFabricNode = 3; // FABRIC_NODE_ID
+ l_orlenaProcs[6].procFabricChip = 0; // FABRIC_CHIP_ID
+ l_orlenaProcs[6].iv_isMaster = false; // Not master proc
+ l_orlenaProcs[6].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_orlenaProcs[6]->iv_pAProcs[0] = l_orlenaProcs[4];
- l_orlenaProcs[6]->iv_pAProcs[1] = l_orlenaProcs[2];
- l_orlenaProcs[6]->iv_pAProcs[2] = l_orlenaProcs[0];
+ l_orlenaProcs[6].iv_pAProcs[0] = &l_orlenaProcs[4];
+ l_orlenaProcs[6].iv_pAProcs[1] = &l_orlenaProcs[2];
+ l_orlenaProcs[6].iv_pAProcs[2] = &l_orlenaProcs[0];
// XBus links and states
- l_orlenaProcs[6]->iv_pXProcs[0] = l_orlenaProcs[7];
+ l_orlenaProcs[6].iv_pXProcs[0] = &l_orlenaProcs[7];
// Proc7:
- l_orlenaProcs[7]->iv_pThisProc = NULL; // Target *
- l_orlenaProcs[7]->procHUID = 7; // HUID
- l_orlenaProcs[7]->procFabricNode = 3; // FABRIC_NODE_ID
- l_orlenaProcs[7]->procFabricChip = 1; // FABRIC_CHIP_ID
- l_orlenaProcs[7]->iv_isMaster = false; // Not master proc
- l_orlenaProcs[7]->iv_deconfigured = false; // HWAS state
+ l_orlenaProcs[7].iv_pThisProc = NULL; // Target *
+ l_orlenaProcs[7].procHUID = 7; // HUID
+ l_orlenaProcs[7].procFabricNode = 3; // FABRIC_NODE_ID
+ l_orlenaProcs[7].procFabricChip = 1; // FABRIC_CHIP_ID
+ l_orlenaProcs[7].iv_isMaster = false; // Not master proc
+ l_orlenaProcs[7].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_orlenaProcs[7]->iv_pAProcs[0] = l_orlenaProcs[3];
- l_orlenaProcs[7]->iv_pAProcs[1] = l_orlenaProcs[1];
- l_orlenaProcs[7]->iv_pAProcs[2] = l_orlenaProcs[5];
+ l_orlenaProcs[7].iv_pAProcs[0] = &l_orlenaProcs[3];
+ l_orlenaProcs[7].iv_pAProcs[1] = &l_orlenaProcs[1];
+ l_orlenaProcs[7].iv_pAProcs[2] = &l_orlenaProcs[5];
// XBus links and states
- l_orlenaProcs[7]->iv_pXProcs[0] = l_orlenaProcs[6];
+ l_orlenaProcs[7].iv_pXProcs[0] = &l_orlenaProcs[6];
// Call _deconfigureAssocProc to determine which procs
// should be deconfigured based on state of system passed in
@@ -2144,14 +2130,14 @@ public:
}
// Check result
- if (l_orlenaProcs[0]->iv_deconfigured == false &&
- l_orlenaProcs[1]->iv_deconfigured == true &&
- l_orlenaProcs[2]->iv_deconfigured == false &&
- l_orlenaProcs[3]->iv_deconfigured == true &&
- l_orlenaProcs[4]->iv_deconfigured == false &&
- l_orlenaProcs[5]->iv_deconfigured == true &&
- l_orlenaProcs[6]->iv_deconfigured == false &&
- l_orlenaProcs[7]->iv_deconfigured == true)
+ if (l_orlenaProcs[0].iv_deconfigured == false &&
+ l_orlenaProcs[1].iv_deconfigured == true &&
+ l_orlenaProcs[2].iv_deconfigured == false &&
+ l_orlenaProcs[3].iv_deconfigured == true &&
+ l_orlenaProcs[4].iv_deconfigured == false &&
+ l_orlenaProcs[5].iv_deconfigured == true &&
+ l_orlenaProcs[6].iv_deconfigured == false &&
+ l_orlenaProcs[7].iv_deconfigured == true)
{
TS_TRACE(INFO_MRK "testDeconfigureAssocProc3: Success");
}
@@ -2159,9 +2145,6 @@ public:
{
TS_FAIL("testDeconfigureAssocProc3: incorrect configuration returned");
}
- // Free previously allocated memory
- while(!l_orlenaProcs.empty()) delete l_orlenaProcs.back(),
- l_orlenaProcs.pop_back();
}
@@ -2186,131 +2169,128 @@ public:
errlHndl_t l_pErr = NULL;
// User-defined number of procs
- uint8_t NUM_PROCS = 8;
+ size_t NUM_PROCS = 8;
// Define and populate vector
- std::vector<DeconfigGard::ProcInfo *> l_orlenaProcs(NUM_PROCS);
-
- for (uint8_t i = 0; i < NUM_PROCS; i++)
- {
- l_orlenaProcs[i] = new DeconfigGard::ProcInfo();
- }
+ DeconfigGard::ProcInfoVector l_orlenaProcs;
+ DeconfigGard::ProcInfo l_ProcInfo = DeconfigGard::ProcInfo();
+ l_orlenaProcs.insert(l_orlenaProcs.begin(), NUM_PROCS, l_ProcInfo);
// Proc0:
- l_orlenaProcs[0]->iv_pThisProc = NULL; // Target *
- l_orlenaProcs[0]->procHUID = 0; // HUID
- l_orlenaProcs[0]->procFabricNode = 0; // FABRIC_NODE_ID
- l_orlenaProcs[0]->procFabricChip = 0; // FABRIC_CHIP_ID
- l_orlenaProcs[0]->iv_isMaster = true; // Master proc
- l_orlenaProcs[0]->iv_deconfigured = false; // HWAS state
+ l_orlenaProcs[0].iv_pThisProc = NULL; // Target *
+ l_orlenaProcs[0].procHUID = 0; // HUID
+ l_orlenaProcs[0].procFabricNode = 0; // FABRIC_NODE_ID
+ l_orlenaProcs[0].procFabricChip = 0; // FABRIC_CHIP_ID
+ l_orlenaProcs[0].iv_isMaster = true; // Master proc
+ l_orlenaProcs[0].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_orlenaProcs[0]->iv_pAProcs[0] = l_orlenaProcs[2];
- l_orlenaProcs[0]->iv_pAProcs[1] = l_orlenaProcs[4];
- l_orlenaProcs[0]->iv_pAProcs[2] = l_orlenaProcs[6];
+ l_orlenaProcs[0].iv_pAProcs[0] = &l_orlenaProcs[2];
+ l_orlenaProcs[0].iv_pAProcs[1] = &l_orlenaProcs[4];
+ l_orlenaProcs[0].iv_pAProcs[2] = &l_orlenaProcs[6];
// XBus links and states
- l_orlenaProcs[0]->iv_pXProcs[0] = l_orlenaProcs[1];
+ l_orlenaProcs[0].iv_pXProcs[0] = &l_orlenaProcs[1];
// Proc1:
- l_orlenaProcs[1]->iv_pThisProc = NULL; // Target *
- l_orlenaProcs[1]->procHUID = 1; // HUID
- l_orlenaProcs[1]->procFabricNode = 0; // FABRIC_NODE_ID
- l_orlenaProcs[1]->procFabricChip = 1; // FABRIC_CHIP_ID
- l_orlenaProcs[1]->iv_isMaster = false; // Not master proc
- l_orlenaProcs[1]->iv_deconfigured = false; // HWAS state
+ l_orlenaProcs[1].iv_pThisProc = NULL; // Target *
+ l_orlenaProcs[1].procHUID = 1; // HUID
+ l_orlenaProcs[1].procFabricNode = 0; // FABRIC_NODE_ID
+ l_orlenaProcs[1].procFabricChip = 1; // FABRIC_CHIP_ID
+ l_orlenaProcs[1].iv_isMaster = false; // Not master proc
+ l_orlenaProcs[1].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_orlenaProcs[1]->iv_pAProcs[0] = l_orlenaProcs[5];
- l_orlenaProcs[1]->iv_pAProcs[1] = l_orlenaProcs[7];
- l_orlenaProcs[1]->iv_pAProcs[2] = l_orlenaProcs[3];
+ l_orlenaProcs[1].iv_pAProcs[0] = &l_orlenaProcs[5];
+ l_orlenaProcs[1].iv_pAProcs[1] = &l_orlenaProcs[7];
+ l_orlenaProcs[1].iv_pAProcs[2] = &l_orlenaProcs[3];
// XBus links and states
- l_orlenaProcs[1]->iv_pXProcs[0] = l_orlenaProcs[0];
+ l_orlenaProcs[1].iv_pXProcs[0] = &l_orlenaProcs[0];
// Proc2:
- l_orlenaProcs[2]->iv_pThisProc = NULL; // Target *
- l_orlenaProcs[2]->procHUID = 2; // HUID
- l_orlenaProcs[2]->procFabricNode = 1; // FABRIC_NODE_ID
- l_orlenaProcs[2]->procFabricChip = 0; // FABRIC_CHIP_ID
- l_orlenaProcs[2]->iv_isMaster = false; // Not master proc
- l_orlenaProcs[2]->iv_deconfigured = false; // HWAS state
+ l_orlenaProcs[2].iv_pThisProc = NULL; // Target *
+ l_orlenaProcs[2].procHUID = 2; // HUID
+ l_orlenaProcs[2].procFabricNode = 1; // FABRIC_NODE_ID
+ l_orlenaProcs[2].procFabricChip = 0; // FABRIC_CHIP_ID
+ l_orlenaProcs[2].iv_isMaster = false; // Not master proc
+ l_orlenaProcs[2].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_orlenaProcs[2]->iv_pAProcs[0] = l_orlenaProcs[0];
- l_orlenaProcs[2]->iv_pAProcs[1] = l_orlenaProcs[6];
- l_orlenaProcs[2]->iv_pAProcs[2] = l_orlenaProcs[4];
- l_orlenaProcs[2]->iv_ADeconfigured[2] = true;
+ l_orlenaProcs[2].iv_pAProcs[0] = &l_orlenaProcs[0];
+ l_orlenaProcs[2].iv_pAProcs[1] = &l_orlenaProcs[6];
+ l_orlenaProcs[2].iv_pAProcs[2] = &l_orlenaProcs[4];
+ l_orlenaProcs[2].iv_ADeconfigured[2] = true;
// XBus links and states
- l_orlenaProcs[2]->iv_pXProcs[0] = l_orlenaProcs[3];
+ l_orlenaProcs[2].iv_pXProcs[0] = &l_orlenaProcs[3];
// Proc3:
- l_orlenaProcs[3]->iv_pThisProc = NULL; // Target *
- l_orlenaProcs[3]->procHUID = 3; // HUID
- l_orlenaProcs[3]->procFabricNode = 1; // FABRIC_NODE_ID
- l_orlenaProcs[3]->procFabricChip = 1; // FABRIC_CHIP_ID
- l_orlenaProcs[3]->iv_isMaster = false; // Not master proc
- l_orlenaProcs[3]->iv_deconfigured = false; // HWAS state
+ l_orlenaProcs[3].iv_pThisProc = NULL; // Target *
+ l_orlenaProcs[3].procHUID = 3; // HUID
+ l_orlenaProcs[3].procFabricNode = 1; // FABRIC_NODE_ID
+ l_orlenaProcs[3].procFabricChip = 1; // FABRIC_CHIP_ID
+ l_orlenaProcs[3].iv_isMaster = false; // Not master proc
+ l_orlenaProcs[3].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_orlenaProcs[3]->iv_pAProcs[0] = l_orlenaProcs[7];
- l_orlenaProcs[3]->iv_pAProcs[1] = l_orlenaProcs[5];
- l_orlenaProcs[3]->iv_pAProcs[2] = l_orlenaProcs[1];
+ l_orlenaProcs[3].iv_pAProcs[0] = &l_orlenaProcs[7];
+ l_orlenaProcs[3].iv_pAProcs[1] = &l_orlenaProcs[5];
+ l_orlenaProcs[3].iv_pAProcs[2] = &l_orlenaProcs[1];
// XBus links and states
- l_orlenaProcs[3]->iv_pXProcs[0] = l_orlenaProcs[2];
+ l_orlenaProcs[3].iv_pXProcs[0] = &l_orlenaProcs[2];
// Proc4:
- l_orlenaProcs[4]->iv_pThisProc = NULL; // Target *
- l_orlenaProcs[4]->procHUID = 4; // HUID
- l_orlenaProcs[4]->procFabricNode = 2; // FABRIC_NODE_ID
- l_orlenaProcs[4]->procFabricChip = 0; // FABRIC_CHIP_ID
- l_orlenaProcs[4]->iv_isMaster = false; // Master proc
- l_orlenaProcs[4]->iv_deconfigured = false; // HWAS state
+ l_orlenaProcs[4].iv_pThisProc = NULL; // Target *
+ l_orlenaProcs[4].procHUID = 4; // HUID
+ l_orlenaProcs[4].procFabricNode = 2; // FABRIC_NODE_ID
+ l_orlenaProcs[4].procFabricChip = 0; // FABRIC_CHIP_ID
+ l_orlenaProcs[4].iv_isMaster = false; // Master proc
+ l_orlenaProcs[4].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_orlenaProcs[4]->iv_pAProcs[0] = l_orlenaProcs[6];
- l_orlenaProcs[4]->iv_pAProcs[1] = l_orlenaProcs[0];
- l_orlenaProcs[4]->iv_pAProcs[2] = l_orlenaProcs[2];
- l_orlenaProcs[4]->iv_ADeconfigured[2] = true;
+ l_orlenaProcs[4].iv_pAProcs[0] = &l_orlenaProcs[6];
+ l_orlenaProcs[4].iv_pAProcs[1] = &l_orlenaProcs[0];
+ l_orlenaProcs[4].iv_pAProcs[2] = &l_orlenaProcs[2];
+ l_orlenaProcs[4].iv_ADeconfigured[2] = true;
// XBus links and states
- l_orlenaProcs[4]->iv_pXProcs[0] = l_orlenaProcs[5];
+ l_orlenaProcs[4].iv_pXProcs[0] = &l_orlenaProcs[5];
// Proc5:
- l_orlenaProcs[5]->iv_pThisProc = NULL; // Target *
- l_orlenaProcs[5]->procHUID = 5; // HUID
- l_orlenaProcs[5]->procFabricNode = 2; // FABRIC_NODE_ID
- l_orlenaProcs[5]->procFabricChip = 1; // FABRIC_CHIP_ID
- l_orlenaProcs[5]->iv_isMaster = false; // Not master proc
- l_orlenaProcs[5]->iv_deconfigured = false; // HWAS state
+ l_orlenaProcs[5].iv_pThisProc = NULL; // Target *
+ l_orlenaProcs[5].procHUID = 5; // HUID
+ l_orlenaProcs[5].procFabricNode = 2; // FABRIC_NODE_ID
+ l_orlenaProcs[5].procFabricChip = 1; // FABRIC_CHIP_ID
+ l_orlenaProcs[5].iv_isMaster = false; // Not master proc
+ l_orlenaProcs[5].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_orlenaProcs[5]->iv_pAProcs[0] = l_orlenaProcs[1];
- l_orlenaProcs[5]->iv_pAProcs[1] = l_orlenaProcs[3];
- l_orlenaProcs[5]->iv_pAProcs[2] = l_orlenaProcs[7];
+ l_orlenaProcs[5].iv_pAProcs[0] = &l_orlenaProcs[1];
+ l_orlenaProcs[5].iv_pAProcs[1] = &l_orlenaProcs[3];
+ l_orlenaProcs[5].iv_pAProcs[2] = &l_orlenaProcs[7];
// XBus links and states
- l_orlenaProcs[5]->iv_pXProcs[0] = l_orlenaProcs[4];
+ l_orlenaProcs[5].iv_pXProcs[0] = &l_orlenaProcs[4];
// Proc6:
- l_orlenaProcs[6]->iv_pThisProc = NULL; // Target *
- l_orlenaProcs[6]->procHUID = 6; // HUID
- l_orlenaProcs[6]->procFabricNode = 3; // FABRIC_NODE_ID
- l_orlenaProcs[6]->procFabricChip = 0; // FABRIC_CHIP_ID
- l_orlenaProcs[6]->iv_isMaster = false; // Not master proc
- l_orlenaProcs[6]->iv_deconfigured = false; // HWAS state
+ l_orlenaProcs[6].iv_pThisProc = NULL; // Target *
+ l_orlenaProcs[6].procHUID = 6; // HUID
+ l_orlenaProcs[6].procFabricNode = 3; // FABRIC_NODE_ID
+ l_orlenaProcs[6].procFabricChip = 0; // FABRIC_CHIP_ID
+ l_orlenaProcs[6].iv_isMaster = false; // Not master proc
+ l_orlenaProcs[6].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_orlenaProcs[6]->iv_pAProcs[0] = l_orlenaProcs[4];
- l_orlenaProcs[6]->iv_pAProcs[1] = l_orlenaProcs[2];
- l_orlenaProcs[6]->iv_pAProcs[2] = l_orlenaProcs[0];
+ l_orlenaProcs[6].iv_pAProcs[0] = &l_orlenaProcs[4];
+ l_orlenaProcs[6].iv_pAProcs[1] = &l_orlenaProcs[2];
+ l_orlenaProcs[6].iv_pAProcs[2] = &l_orlenaProcs[0];
// XBus links and states
- l_orlenaProcs[6]->iv_pXProcs[0] = l_orlenaProcs[7];
- l_orlenaProcs[6]->iv_XDeconfigured[0] = true;
+ l_orlenaProcs[6].iv_pXProcs[0] = &l_orlenaProcs[7];
+ l_orlenaProcs[6].iv_XDeconfigured[0] = true;
// Proc7:
- l_orlenaProcs[7]->iv_pThisProc = NULL; // Target *
- l_orlenaProcs[7]->procHUID = 7; // HUID
- l_orlenaProcs[7]->procFabricNode = 3; // FABRIC_NODE_ID
- l_orlenaProcs[7]->procFabricChip = 1; // FABRIC_CHIP_ID
- l_orlenaProcs[7]->iv_isMaster = false; // Not master proc
- l_orlenaProcs[7]->iv_deconfigured = false; // HWAS state
+ l_orlenaProcs[7].iv_pThisProc = NULL; // Target *
+ l_orlenaProcs[7].procHUID = 7; // HUID
+ l_orlenaProcs[7].procFabricNode = 3; // FABRIC_NODE_ID
+ l_orlenaProcs[7].procFabricChip = 1; // FABRIC_CHIP_ID
+ l_orlenaProcs[7].iv_isMaster = false; // Not master proc
+ l_orlenaProcs[7].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_orlenaProcs[7]->iv_pAProcs[0] = l_orlenaProcs[3];
- l_orlenaProcs[7]->iv_pAProcs[1] = l_orlenaProcs[1];
- l_orlenaProcs[7]->iv_pAProcs[2] = l_orlenaProcs[5];
+ l_orlenaProcs[7].iv_pAProcs[0] = &l_orlenaProcs[3];
+ l_orlenaProcs[7].iv_pAProcs[1] = &l_orlenaProcs[1];
+ l_orlenaProcs[7].iv_pAProcs[2] = &l_orlenaProcs[5];
// XBus links and states
- l_orlenaProcs[7]->iv_pXProcs[0] = l_orlenaProcs[6];
- l_orlenaProcs[7]->iv_XDeconfigured[0] = true;
+ l_orlenaProcs[7].iv_pXProcs[0] = &l_orlenaProcs[6];
+ l_orlenaProcs[7].iv_XDeconfigured[0] = true;
// Call _deconfigureAssocProc to determine which procs
// should be deconfigured based on state of system passed in
@@ -2321,14 +2301,14 @@ public:
}
// Check result
- if (l_orlenaProcs[0]->iv_deconfigured == false &&
- l_orlenaProcs[1]->iv_deconfigured == false &&
- l_orlenaProcs[2]->iv_deconfigured == false &&
- l_orlenaProcs[3]->iv_deconfigured == false &&
- l_orlenaProcs[4]->iv_deconfigured == true &&
- l_orlenaProcs[5]->iv_deconfigured == true &&
- l_orlenaProcs[6]->iv_deconfigured == true &&
- l_orlenaProcs[7]->iv_deconfigured == true)
+ if (l_orlenaProcs[0].iv_deconfigured == false &&
+ l_orlenaProcs[1].iv_deconfigured == false &&
+ l_orlenaProcs[2].iv_deconfigured == false &&
+ l_orlenaProcs[3].iv_deconfigured == false &&
+ l_orlenaProcs[4].iv_deconfigured == true &&
+ l_orlenaProcs[5].iv_deconfigured == true &&
+ l_orlenaProcs[6].iv_deconfigured == true &&
+ l_orlenaProcs[7].iv_deconfigured == true)
{
TS_TRACE(INFO_MRK "testDeconfigureAssocProc4: Success");
}
@@ -2336,9 +2316,6 @@ public:
{
TS_FAIL("testDeconfigureAssocProc4: incorrect configuration returned");
}
- // Free previously allocated memory
- while(!l_orlenaProcs.empty()) delete l_orlenaProcs.back(),
- l_orlenaProcs.pop_back();
}
@@ -2364,137 +2341,134 @@ public:
errlHndl_t l_pErr = NULL;
// User-defined number of procs
- uint8_t NUM_PROCS = 8;
+ size_t NUM_PROCS = 8;
// Define and populate vector
- std::vector<DeconfigGard::ProcInfo *> l_orlenaProcs(NUM_PROCS);
-
- for (uint8_t i = 0; i < NUM_PROCS; i++)
- {
- l_orlenaProcs[i] = new DeconfigGard::ProcInfo();
- }
+ DeconfigGard::ProcInfoVector l_orlenaProcs;
+ DeconfigGard::ProcInfo l_ProcInfo = DeconfigGard::ProcInfo();
+ l_orlenaProcs.insert(l_orlenaProcs.begin(), NUM_PROCS, l_ProcInfo);
// Proc0:
- l_orlenaProcs[0]->iv_pThisProc = NULL; // Target *
- l_orlenaProcs[0]->procHUID = 0; // HUID
- l_orlenaProcs[0]->procFabricNode = 0; // FABRIC_NODE_ID
- l_orlenaProcs[0]->procFabricChip = 0; // FABRIC_CHIP_ID
- l_orlenaProcs[0]->iv_isMaster = true; // Master proc
- l_orlenaProcs[0]->iv_deconfigured = false; // HWAS state
+ l_orlenaProcs[0].iv_pThisProc = NULL; // Target *
+ l_orlenaProcs[0].procHUID = 0; // HUID
+ l_orlenaProcs[0].procFabricNode = 0; // FABRIC_NODE_ID
+ l_orlenaProcs[0].procFabricChip = 0; // FABRIC_CHIP_ID
+ l_orlenaProcs[0].iv_isMaster = true; // Master proc
+ l_orlenaProcs[0].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_orlenaProcs[0]->iv_pAProcs[0] = l_orlenaProcs[2];
- l_orlenaProcs[0]->iv_pAProcs[1] = l_orlenaProcs[4];
- l_orlenaProcs[0]->iv_pAProcs[2] = l_orlenaProcs[6];
- l_orlenaProcs[4]->iv_ADeconfigured[1] = true;
+ l_orlenaProcs[0].iv_pAProcs[0] = &l_orlenaProcs[2];
+ l_orlenaProcs[0].iv_pAProcs[1] = &l_orlenaProcs[4];
+ l_orlenaProcs[0].iv_pAProcs[2] = &l_orlenaProcs[6];
+ l_orlenaProcs[4].iv_ADeconfigured[1] = true;
// XBus links and states
- l_orlenaProcs[0]->iv_pXProcs[0] = l_orlenaProcs[1];
+ l_orlenaProcs[0].iv_pXProcs[0] = &l_orlenaProcs[1];
// Proc1:
- l_orlenaProcs[1]->iv_pThisProc = NULL; // Target *
- l_orlenaProcs[1]->procHUID = 1; // HUID
- l_orlenaProcs[1]->procFabricNode = 0; // FABRIC_NODE_ID
- l_orlenaProcs[1]->procFabricChip = 1; // FABRIC_CHIP_ID
- l_orlenaProcs[1]->iv_isMaster = false; // Not master proc
- l_orlenaProcs[1]->iv_deconfigured = false; // HWAS state
+ l_orlenaProcs[1].iv_pThisProc = NULL; // Target *
+ l_orlenaProcs[1].procHUID = 1; // HUID
+ l_orlenaProcs[1].procFabricNode = 0; // FABRIC_NODE_ID
+ l_orlenaProcs[1].procFabricChip = 1; // FABRIC_CHIP_ID
+ l_orlenaProcs[1].iv_isMaster = false; // Not master proc
+ l_orlenaProcs[1].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_orlenaProcs[1]->iv_pAProcs[0] = l_orlenaProcs[5];
- l_orlenaProcs[1]->iv_pAProcs[1] = l_orlenaProcs[7];
- l_orlenaProcs[1]->iv_pAProcs[2] = l_orlenaProcs[3];
+ l_orlenaProcs[1].iv_pAProcs[0] = &l_orlenaProcs[5];
+ l_orlenaProcs[1].iv_pAProcs[1] = &l_orlenaProcs[7];
+ l_orlenaProcs[1].iv_pAProcs[2] = &l_orlenaProcs[3];
// XBus links and states
- l_orlenaProcs[1]->iv_pXProcs[0] = l_orlenaProcs[0];
+ l_orlenaProcs[1].iv_pXProcs[0] = &l_orlenaProcs[0];
// Proc2:
- l_orlenaProcs[2]->iv_pThisProc = NULL; // Target *
- l_orlenaProcs[2]->procHUID = 2; // HUID
- l_orlenaProcs[2]->procFabricNode = 1; // FABRIC_NODE_ID
- l_orlenaProcs[2]->procFabricChip = 0; // FABRIC_CHIP_ID
- l_orlenaProcs[2]->iv_isMaster = false; // Not master proc
- l_orlenaProcs[2]->iv_deconfigured = false; // HWAS state
+ l_orlenaProcs[2].iv_pThisProc = NULL; // Target *
+ l_orlenaProcs[2].procHUID = 2; // HUID
+ l_orlenaProcs[2].procFabricNode = 1; // FABRIC_NODE_ID
+ l_orlenaProcs[2].procFabricChip = 0; // FABRIC_CHIP_ID
+ l_orlenaProcs[2].iv_isMaster = false; // Not master proc
+ l_orlenaProcs[2].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_orlenaProcs[2]->iv_pAProcs[0] = l_orlenaProcs[0];
- l_orlenaProcs[2]->iv_pAProcs[1] = l_orlenaProcs[6];
- l_orlenaProcs[2]->iv_pAProcs[2] = l_orlenaProcs[4];
- l_orlenaProcs[2]->iv_ADeconfigured[2] = true;
+ l_orlenaProcs[2].iv_pAProcs[0] = &l_orlenaProcs[0];
+ l_orlenaProcs[2].iv_pAProcs[1] = &l_orlenaProcs[6];
+ l_orlenaProcs[2].iv_pAProcs[2] = &l_orlenaProcs[4];
+ l_orlenaProcs[2].iv_ADeconfigured[2] = true;
// XBus links and states
- l_orlenaProcs[2]->iv_pXProcs[0] = l_orlenaProcs[3];
+ l_orlenaProcs[2].iv_pXProcs[0] = &l_orlenaProcs[3];
// Proc3:
- l_orlenaProcs[3]->iv_pThisProc = NULL; // Target *
- l_orlenaProcs[3]->procHUID = 3; // HUID
- l_orlenaProcs[3]->procFabricNode = 1; // FABRIC_NODE_ID
- l_orlenaProcs[3]->procFabricChip = 1; // FABRIC_CHIP_ID
- l_orlenaProcs[3]->iv_isMaster = false; // Not master proc
- l_orlenaProcs[3]->iv_deconfigured = false; // HWAS state
+ l_orlenaProcs[3].iv_pThisProc = NULL; // Target *
+ l_orlenaProcs[3].procHUID = 3; // HUID
+ l_orlenaProcs[3].procFabricNode = 1; // FABRIC_NODE_ID
+ l_orlenaProcs[3].procFabricChip = 1; // FABRIC_CHIP_ID
+ l_orlenaProcs[3].iv_isMaster = false; // Not master proc
+ l_orlenaProcs[3].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_orlenaProcs[3]->iv_pAProcs[0] = l_orlenaProcs[7];
- l_orlenaProcs[3]->iv_pAProcs[1] = l_orlenaProcs[5];
- l_orlenaProcs[3]->iv_pAProcs[2] = l_orlenaProcs[1];
+ l_orlenaProcs[3].iv_pAProcs[0] = &l_orlenaProcs[7];
+ l_orlenaProcs[3].iv_pAProcs[1] = &l_orlenaProcs[5];
+ l_orlenaProcs[3].iv_pAProcs[2] = &l_orlenaProcs[1];
// XBus links and states
- l_orlenaProcs[3]->iv_pXProcs[0] = l_orlenaProcs[2];
+ l_orlenaProcs[3].iv_pXProcs[0] = &l_orlenaProcs[2];
// Proc4:
- l_orlenaProcs[4]->iv_pThisProc = NULL; // Target *
- l_orlenaProcs[4]->procHUID = 4; // HUID
- l_orlenaProcs[4]->procFabricNode = 2; // FABRIC_NODE_ID
- l_orlenaProcs[4]->procFabricChip = 0; // FABRIC_CHIP_ID
- l_orlenaProcs[4]->iv_isMaster = false; // Master proc
- l_orlenaProcs[4]->iv_deconfigured = true; // HWAS state
+ l_orlenaProcs[4].iv_pThisProc = NULL; // Target *
+ l_orlenaProcs[4].procHUID = 4; // HUID
+ l_orlenaProcs[4].procFabricNode = 2; // FABRIC_NODE_ID
+ l_orlenaProcs[4].procFabricChip = 0; // FABRIC_CHIP_ID
+ l_orlenaProcs[4].iv_isMaster = false; // Master proc
+ l_orlenaProcs[4].iv_deconfigured = true; // HWAS state
// ABus links and states
- l_orlenaProcs[4]->iv_pAProcs[0] = l_orlenaProcs[6];
- l_orlenaProcs[4]->iv_pAProcs[1] = l_orlenaProcs[0];
- l_orlenaProcs[4]->iv_pAProcs[2] = l_orlenaProcs[2];
- l_orlenaProcs[4]->iv_ADeconfigured[0] = true;
- l_orlenaProcs[4]->iv_ADeconfigured[1] = true;
- l_orlenaProcs[4]->iv_ADeconfigured[2] = true;
+ l_orlenaProcs[4].iv_pAProcs[0] = &l_orlenaProcs[6];
+ l_orlenaProcs[4].iv_pAProcs[1] = &l_orlenaProcs[0];
+ l_orlenaProcs[4].iv_pAProcs[2] = &l_orlenaProcs[2];
+ l_orlenaProcs[4].iv_ADeconfigured[0] = true;
+ l_orlenaProcs[4].iv_ADeconfigured[1] = true;
+ l_orlenaProcs[4].iv_ADeconfigured[2] = true;
// XBus links and states
- l_orlenaProcs[4]->iv_pXProcs[0] = l_orlenaProcs[5];
- l_orlenaProcs[4]->iv_XDeconfigured[0] = true;
+ l_orlenaProcs[4].iv_pXProcs[0] = &l_orlenaProcs[5];
+ l_orlenaProcs[4].iv_XDeconfigured[0] = true;
// Proc5:
- l_orlenaProcs[5]->iv_pThisProc = NULL; // Target *
- l_orlenaProcs[5]->procHUID = 5; // HUID
- l_orlenaProcs[5]->procFabricNode = 2; // FABRIC_NODE_ID
- l_orlenaProcs[5]->procFabricChip = 1; // FABRIC_CHIP_ID
- l_orlenaProcs[5]->iv_isMaster = false; // Not master proc
- l_orlenaProcs[5]->iv_deconfigured = false; // HWAS state
+ l_orlenaProcs[5].iv_pThisProc = NULL; // Target *
+ l_orlenaProcs[5].procHUID = 5; // HUID
+ l_orlenaProcs[5].procFabricNode = 2; // FABRIC_NODE_ID
+ l_orlenaProcs[5].procFabricChip = 1; // FABRIC_CHIP_ID
+ l_orlenaProcs[5].iv_isMaster = false; // Not master proc
+ l_orlenaProcs[5].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_orlenaProcs[5]->iv_pAProcs[0] = l_orlenaProcs[1];
- l_orlenaProcs[5]->iv_pAProcs[1] = l_orlenaProcs[3];
- l_orlenaProcs[5]->iv_pAProcs[2] = l_orlenaProcs[7];
- l_orlenaProcs[5]->iv_ADeconfigured[2] = true;
+ l_orlenaProcs[5].iv_pAProcs[0] = &l_orlenaProcs[1];
+ l_orlenaProcs[5].iv_pAProcs[1] = &l_orlenaProcs[3];
+ l_orlenaProcs[5].iv_pAProcs[2] = &l_orlenaProcs[7];
+ l_orlenaProcs[5].iv_ADeconfigured[2] = true;
// XBus links and states
- l_orlenaProcs[5]->iv_pXProcs[0] = l_orlenaProcs[4];
- l_orlenaProcs[5]->iv_XDeconfigured[0] = true;
+ l_orlenaProcs[5].iv_pXProcs[0] = &l_orlenaProcs[4];
+ l_orlenaProcs[5].iv_XDeconfigured[0] = true;
// Proc6:
- l_orlenaProcs[6]->iv_pThisProc = NULL; // Target *
- l_orlenaProcs[6]->procHUID = 6; // HUID
- l_orlenaProcs[6]->procFabricNode = 3; // FABRIC_NODE_ID
- l_orlenaProcs[6]->procFabricChip = 0; // FABRIC_CHIP_ID
- l_orlenaProcs[6]->iv_isMaster = false; // Not master proc
- l_orlenaProcs[6]->iv_deconfigured = false; // HWAS state
+ l_orlenaProcs[6].iv_pThisProc = NULL; // Target *
+ l_orlenaProcs[6].procHUID = 6; // HUID
+ l_orlenaProcs[6].procFabricNode = 3; // FABRIC_NODE_ID
+ l_orlenaProcs[6].procFabricChip = 0; // FABRIC_CHIP_ID
+ l_orlenaProcs[6].iv_isMaster = false; // Not master proc
+ l_orlenaProcs[6].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_orlenaProcs[6]->iv_pAProcs[0] = l_orlenaProcs[4];
- l_orlenaProcs[6]->iv_pAProcs[1] = l_orlenaProcs[2];
- l_orlenaProcs[6]->iv_pAProcs[2] = l_orlenaProcs[0];
- l_orlenaProcs[6]->iv_ADeconfigured[0] = true;
+ l_orlenaProcs[6].iv_pAProcs[0] = &l_orlenaProcs[4];
+ l_orlenaProcs[6].iv_pAProcs[1] = &l_orlenaProcs[2];
+ l_orlenaProcs[6].iv_pAProcs[2] = &l_orlenaProcs[0];
+ l_orlenaProcs[6].iv_ADeconfigured[0] = true;
// XBus links and states
- l_orlenaProcs[6]->iv_pXProcs[0] = l_orlenaProcs[7];
+ l_orlenaProcs[6].iv_pXProcs[0] = &l_orlenaProcs[7];
// Proc7:
- l_orlenaProcs[7]->iv_pThisProc = NULL; // Target *
- l_orlenaProcs[7]->procHUID = 7; // HUID
- l_orlenaProcs[7]->procFabricNode = 3; // FABRIC_NODE_ID
- l_orlenaProcs[7]->procFabricChip = 1; // FABRIC_CHIP_ID
- l_orlenaProcs[7]->iv_isMaster = false; // Not master proc
- l_orlenaProcs[7]->iv_deconfigured = false; // HWAS state
+ l_orlenaProcs[7].iv_pThisProc = NULL; // Target *
+ l_orlenaProcs[7].procHUID = 7; // HUID
+ l_orlenaProcs[7].procFabricNode = 3; // FABRIC_NODE_ID
+ l_orlenaProcs[7].procFabricChip = 1; // FABRIC_CHIP_ID
+ l_orlenaProcs[7].iv_isMaster = false; // Not master proc
+ l_orlenaProcs[7].iv_deconfigured = false; // HWAS state
// ABus links and states
- l_orlenaProcs[7]->iv_pAProcs[0] = l_orlenaProcs[3];
- l_orlenaProcs[7]->iv_pAProcs[1] = l_orlenaProcs[1];
- l_orlenaProcs[7]->iv_pAProcs[2] = l_orlenaProcs[5];
- l_orlenaProcs[7]->iv_ADeconfigured[2] = true;
+ l_orlenaProcs[7].iv_pAProcs[0] = &l_orlenaProcs[3];
+ l_orlenaProcs[7].iv_pAProcs[1] = &l_orlenaProcs[1];
+ l_orlenaProcs[7].iv_pAProcs[2] = &l_orlenaProcs[5];
+ l_orlenaProcs[7].iv_ADeconfigured[2] = true;
// XBus links and states
- l_orlenaProcs[7]->iv_pXProcs[0] = l_orlenaProcs[6];
+ l_orlenaProcs[7].iv_pXProcs[0] = &l_orlenaProcs[6];
// Call _deconfigureAssocProc to determine which procs
// should be deconfigured based on state of system passed in
@@ -2505,14 +2479,14 @@ public:
}
// Check result
- if (l_orlenaProcs[0]->iv_deconfigured == false &&
- l_orlenaProcs[1]->iv_deconfigured == false &&
- l_orlenaProcs[2]->iv_deconfigured == false &&
- l_orlenaProcs[3]->iv_deconfigured == false &&
- l_orlenaProcs[4]->iv_deconfigured == true &&
- l_orlenaProcs[5]->iv_deconfigured == true &&
- l_orlenaProcs[6]->iv_deconfigured == false &&
- l_orlenaProcs[7]->iv_deconfigured == false)
+ if (l_orlenaProcs[0].iv_deconfigured == false &&
+ l_orlenaProcs[1].iv_deconfigured == false &&
+ l_orlenaProcs[2].iv_deconfigured == false &&
+ l_orlenaProcs[3].iv_deconfigured == false &&
+ l_orlenaProcs[4].iv_deconfigured == true &&
+ l_orlenaProcs[5].iv_deconfigured == true &&
+ l_orlenaProcs[6].iv_deconfigured == false &&
+ l_orlenaProcs[7].iv_deconfigured == false)
{
TS_TRACE(INFO_MRK "testDeconfigureAssocProc5: Success");
}
@@ -2520,9 +2494,6 @@ public:
{
TS_FAIL("testDeconfigureAssocProc5: incorrect configuration returned");
}
- // Free previously allocated memory
- while(!l_orlenaProcs.empty()) delete l_orlenaProcs.back(),
- l_orlenaProcs.pop_back();
}
@@ -2549,67 +2520,64 @@ public:
errlHndl_t l_pErr = NULL;
// User-defined number of procs
- uint8_t NUM_PROCS = 4;
+ size_t NUM_PROCS = 4;
// Define and populate vector
- std::vector<DeconfigGard::ProcInfo *> l_brazosProcs(NUM_PROCS);
-
- for (uint8_t i = 0; i < NUM_PROCS; i++)
- {
- l_brazosProcs[i] = new DeconfigGard::ProcInfo();
- }
+ DeconfigGard::ProcInfoVector l_brazosProcs;
+ DeconfigGard::ProcInfo l_ProcInfo = DeconfigGard::ProcInfo();
+ l_brazosProcs.insert(l_brazosProcs.begin(), NUM_PROCS, l_ProcInfo);
// Set proc options
// Proc0:
- l_brazosProcs[0]->iv_pThisProc = NULL; // Target *
- l_brazosProcs[0]->procHUID = 0; // HUID
- l_brazosProcs[0]->procFabricNode = 0; // FABRIC_NODE_ID
- l_brazosProcs[0]->procFabricChip = 0; // FABRIC_CHIP_ID
- l_brazosProcs[0]->iv_isMaster = true; // Master proc
- l_brazosProcs[0]->iv_deconfigured = false; // HWAS state
+ l_brazosProcs[0].iv_pThisProc = NULL; // Target *
+ l_brazosProcs[0].procHUID = 0; // HUID
+ l_brazosProcs[0].procFabricNode = 0; // FABRIC_NODE_ID
+ l_brazosProcs[0].procFabricChip = 0; // FABRIC_CHIP_ID
+ l_brazosProcs[0].iv_isMaster = true; // Master proc
+ l_brazosProcs[0].iv_deconfigured = false; // HWAS state
// XBus links and states
- l_brazosProcs[0]->iv_pXProcs[0] = l_brazosProcs[1];
- l_brazosProcs[0]->iv_pXProcs[1] = l_brazosProcs[2];
- l_brazosProcs[0]->iv_pXProcs[3] = l_brazosProcs[3];
- l_brazosProcs[0]->iv_XDeconfigured[0] = true;
+ l_brazosProcs[0].iv_pXProcs[0] = &l_brazosProcs[1];
+ l_brazosProcs[0].iv_pXProcs[1] = &l_brazosProcs[2];
+ l_brazosProcs[0].iv_pXProcs[3] = &l_brazosProcs[3];
+ l_brazosProcs[0].iv_XDeconfigured[0] = true;
// Proc1:
- l_brazosProcs[1]->iv_pThisProc = NULL; // Target *
- l_brazosProcs[1]->procHUID = 1; // HUID
- l_brazosProcs[1]->procFabricNode = 0; // FABRIC_NODE_ID
- l_brazosProcs[1]->procFabricChip = 1; // FABRIC_CHIP_ID
- l_brazosProcs[1]->iv_isMaster = false; // Not master proc
- l_brazosProcs[1]->iv_deconfigured = false; // HWAS state
+ l_brazosProcs[1].iv_pThisProc = NULL; // Target *
+ l_brazosProcs[1].procHUID = 1; // HUID
+ l_brazosProcs[1].procFabricNode = 0; // FABRIC_NODE_ID
+ l_brazosProcs[1].procFabricChip = 1; // FABRIC_CHIP_ID
+ l_brazosProcs[1].iv_isMaster = false; // Not master proc
+ l_brazosProcs[1].iv_deconfigured = false; // HWAS state
// XBus links and states
// XBus links and states
- l_brazosProcs[1]->iv_pXProcs[0] = l_brazosProcs[2];
- l_brazosProcs[1]->iv_pXProcs[1] = l_brazosProcs[3];
- l_brazosProcs[1]->iv_pXProcs[3] = l_brazosProcs[0];
- l_brazosProcs[1]->iv_XDeconfigured[3] = true;
+ l_brazosProcs[1].iv_pXProcs[0] = &l_brazosProcs[2];
+ l_brazosProcs[1].iv_pXProcs[1] = &l_brazosProcs[3];
+ l_brazosProcs[1].iv_pXProcs[3] = &l_brazosProcs[0];
+ l_brazosProcs[1].iv_XDeconfigured[3] = true;
// Proc2:
- l_brazosProcs[2]->iv_pThisProc = NULL; // Target *
- l_brazosProcs[2]->procHUID = 2; // HUID
- l_brazosProcs[2]->procFabricNode = 0; // FABRIC_NODE_ID
- l_brazosProcs[2]->procFabricChip = 2; // FABRIC_CHIP_ID
- l_brazosProcs[2]->iv_isMaster = false; // Not master proc
- l_brazosProcs[2]->iv_deconfigured = false; // HWAS state
+ l_brazosProcs[2].iv_pThisProc = NULL; // Target *
+ l_brazosProcs[2].procHUID = 2; // HUID
+ l_brazosProcs[2].procFabricNode = 0; // FABRIC_NODE_ID
+ l_brazosProcs[2].procFabricChip = 2; // FABRIC_CHIP_ID
+ l_brazosProcs[2].iv_isMaster = false; // Not master proc
+ l_brazosProcs[2].iv_deconfigured = false; // HWAS state
// XBus links and states
- l_brazosProcs[2]->iv_pXProcs[0] = l_brazosProcs[3];
- l_brazosProcs[2]->iv_pXProcs[1] = l_brazosProcs[0];
- l_brazosProcs[2]->iv_pXProcs[3] = l_brazosProcs[1];
+ l_brazosProcs[2].iv_pXProcs[0] = &l_brazosProcs[3];
+ l_brazosProcs[2].iv_pXProcs[1] = &l_brazosProcs[0];
+ l_brazosProcs[2].iv_pXProcs[3] = &l_brazosProcs[1];
// Proc3:
- l_brazosProcs[3]->iv_pThisProc = NULL; // Target *
- l_brazosProcs[3]->procHUID = 3; // HUID
- l_brazosProcs[3]->procFabricNode = 0; // FABRIC_NODE_ID
- l_brazosProcs[3]->procFabricChip = 3; // FABRIC_CHIP_ID
- l_brazosProcs[3]->iv_isMaster = false; // Not master proc
- l_brazosProcs[3]->iv_deconfigured = false; // HWAS state
+ l_brazosProcs[3].iv_pThisProc = NULL; // Target *
+ l_brazosProcs[3].procHUID = 3; // HUID
+ l_brazosProcs[3].procFabricNode = 0; // FABRIC_NODE_ID
+ l_brazosProcs[3].procFabricChip = 3; // FABRIC_CHIP_ID
+ l_brazosProcs[3].iv_isMaster = false; // Not master proc
+ l_brazosProcs[3].iv_deconfigured = false; // HWAS state
// XBus links and states
- l_brazosProcs[3]->iv_pXProcs[0] = l_brazosProcs[0];
- l_brazosProcs[3]->iv_pXProcs[1] = l_brazosProcs[1];
- l_brazosProcs[3]->iv_pXProcs[3] = l_brazosProcs[2];
+ l_brazosProcs[3].iv_pXProcs[0] = &l_brazosProcs[0];
+ l_brazosProcs[3].iv_pXProcs[1] = &l_brazosProcs[1];
+ l_brazosProcs[3].iv_pXProcs[3] = &l_brazosProcs[2];
// Call _deconfigureAssocProc to determine which procs
// should be deconfigured based on state of system passed in
@@ -2620,10 +2588,10 @@ public:
}
// Check result
- if (l_brazosProcs[0]->iv_deconfigured == false &&
- l_brazosProcs[1]->iv_deconfigured == true &&
- l_brazosProcs[2]->iv_deconfigured == false &&
- l_brazosProcs[3]->iv_deconfigured == false)
+ if (l_brazosProcs[0].iv_deconfigured == false &&
+ l_brazosProcs[1].iv_deconfigured == true &&
+ l_brazosProcs[2].iv_deconfigured == false &&
+ l_brazosProcs[3].iv_deconfigured == false)
{
TS_TRACE(INFO_MRK "testDeconfigureAssocProc6: Success");
}
@@ -2631,9 +2599,6 @@ public:
{
TS_FAIL("testDeconfigureAssocProc6: incorrect configuration returned");
}
- // Free previously allocated memory
- while(!l_brazosProcs.empty()) delete l_brazosProcs.back(),
- l_brazosProcs.pop_back();
}
@@ -2805,71 +2770,68 @@ public:
errlHndl_t l_pErr = NULL;
// User-defined number of procs
- uint8_t NUM_PROCS = 4;
+ size_t NUM_PROCS = 4;
// Define and populate vector
- std::vector<DeconfigGard::ProcInfo *> l_tuletaProcs(NUM_PROCS);
-
- for (uint8_t i = 0; i < NUM_PROCS; i++)
- {
- l_tuletaProcs[i] = new DeconfigGard::ProcInfo();
- }
+ DeconfigGard::ProcInfoVector l_tuletaProcs;
+ DeconfigGard::ProcInfo l_ProcInfo = DeconfigGard::ProcInfo();
+ l_tuletaProcs.insert(l_tuletaProcs.begin(), NUM_PROCS, l_ProcInfo);
// Set proc options
// Proc0:
- l_tuletaProcs[0]->iv_pThisProc = NULL; // Target *
- l_tuletaProcs[0]->procHUID = 0; // HUID
- l_tuletaProcs[0]->procFabricNode = 0; // FABRIC_NODE_ID
- l_tuletaProcs[0]->procFabricChip = 0; // FABRIC_CHIP_ID
- l_tuletaProcs[0]->iv_isMaster = true; // Master proc
- l_tuletaProcs[0]->iv_deconfigured = false; // HWAS state
- l_tuletaProcs[0]->iv_pAProcs[0] = l_tuletaProcs[2];
- l_tuletaProcs[0]->iv_pAProcs[1] = l_tuletaProcs[2];
- l_tuletaProcs[0]->iv_ADeconfigured[0] = true;
- l_tuletaProcs[0]->iv_ADeconfigured[1] = true;
- l_tuletaProcs[0]->iv_pXProcs[0] = l_tuletaProcs[1];
+ l_tuletaProcs[0].iv_pThisProc = NULL; // Target *
+ l_tuletaProcs[0].procHUID = 0; // HUID
+ l_tuletaProcs[0].procFabricNode = 0; // FABRIC_NODE_ID
+ l_tuletaProcs[0].procFabricChip = 0; // FABRIC_CHIP_ID
+ l_tuletaProcs[0].iv_isMaster = true; // Master proc
+ l_tuletaProcs[0].iv_deconfigured = false; // HWAS state
+ l_tuletaProcs[0].iv_pAProcs[0] = &l_tuletaProcs[2];
+ l_tuletaProcs[0].iv_pAProcs[1] = &l_tuletaProcs[2];
+ l_tuletaProcs[0].iv_ADeconfigured[0] = true;
+ l_tuletaProcs[0].iv_ADeconfigured[1] = true;
+ l_tuletaProcs[0].iv_pXProcs[0] = &l_tuletaProcs[1];
// Proc1:
- l_tuletaProcs[1]->iv_pThisProc = NULL; // Target *
- l_tuletaProcs[1]->procHUID = 1; // HUID
- l_tuletaProcs[1]->procFabricNode = 0; // FABRIC_NODE_ID
- l_tuletaProcs[1]->procFabricChip = 1; // FABRIC_CHIP_ID
- l_tuletaProcs[1]->iv_isMaster = false; // Not master proc
- l_tuletaProcs[1]->iv_deconfigured = false; // HWAS state
- l_tuletaProcs[1]->iv_pAProcs[0] = l_tuletaProcs[3];
- l_tuletaProcs[1]->iv_pAProcs[1] = l_tuletaProcs[3];
- l_tuletaProcs[1]->iv_ADeconfigured[0] = true;
- l_tuletaProcs[1]->iv_ADeconfigured[1] = true;
- l_tuletaProcs[1]->iv_pXProcs[0] = l_tuletaProcs[0];
+ l_tuletaProcs[1].iv_pThisProc = NULL; // Target *
+ l_tuletaProcs[1].procHUID = 1; // HUID
+ l_tuletaProcs[1].procFabricNode = 0; // FABRIC_NODE_ID
+ l_tuletaProcs[1].procFabricChip = 1; // FABRIC_CHIP_ID
+ l_tuletaProcs[1].iv_isMaster = false; // Not master proc
+ l_tuletaProcs[1].iv_deconfigured = false; // HWAS state
+ l_tuletaProcs[1].iv_pAProcs[0] = &l_tuletaProcs[3];
+ l_tuletaProcs[1].iv_pAProcs[1] = &l_tuletaProcs[3];
+ l_tuletaProcs[1].iv_ADeconfigured[0] = true;
+ l_tuletaProcs[1].iv_ADeconfigured[1] = true;
+ l_tuletaProcs[1].iv_pXProcs[0] = &l_tuletaProcs[0];
// Proc2:
- l_tuletaProcs[2]->iv_pThisProc = NULL; // Target *
- l_tuletaProcs[2]->procHUID = 2; // HUID
- l_tuletaProcs[2]->procFabricNode = 1; // FABRIC_NODE_ID
- l_tuletaProcs[2]->procFabricChip = 0; // FABRIC_CHIP_ID
- l_tuletaProcs[2]->iv_isMaster = false; // Not master proc
- l_tuletaProcs[2]->iv_deconfigured = true; // HWAS state
- l_tuletaProcs[2]->iv_pAProcs[0] = l_tuletaProcs[0];
- l_tuletaProcs[2]->iv_pAProcs[1] = l_tuletaProcs[0];
- l_tuletaProcs[2]->iv_ADeconfigured[0] = true;
- l_tuletaProcs[2]->iv_ADeconfigured[1] = true;
- l_tuletaProcs[2]->iv_pXProcs[0] = l_tuletaProcs[3];
- l_tuletaProcs[2]->iv_XDeconfigured[0] = true;
+ l_tuletaProcs[2].iv_pThisProc = NULL; // Target *
+ l_tuletaProcs[2].procHUID = 2; // HUID
+ l_tuletaProcs[2].procFabricNode = 1; // FABRIC_NODE_ID
+ l_tuletaProcs[2].procFabricChip = 0; // FABRIC_CHIP_ID
+ l_tuletaProcs[2].iv_isMaster = false; // Not master proc
+ l_tuletaProcs[2].iv_deconfigured = true; // HWAS state
+ l_tuletaProcs[2].iv_pAProcs[0] = &l_tuletaProcs[0];
+ l_tuletaProcs[2].iv_pAProcs[1] = &l_tuletaProcs[0];
+ l_tuletaProcs[2].iv_ADeconfigured[0] = true;
+ l_tuletaProcs[2].iv_ADeconfigured[1] = true;
+ l_tuletaProcs[2].iv_pXProcs[0] = &l_tuletaProcs[3];
+ l_tuletaProcs[2].iv_XDeconfigured[0] = true;
// Proc3:
- l_tuletaProcs[3]->iv_pThisProc = NULL; // Target *
- l_tuletaProcs[3]->procHUID = 3; // HUID
- l_tuletaProcs[3]->procFabricNode = 1; // FABRIC_NODE_ID
- l_tuletaProcs[3]->procFabricChip = 1; // FABRIC_CHIP_ID
- l_tuletaProcs[3]->iv_isMaster = false; // Not master proc
- l_tuletaProcs[3]->iv_deconfigured = true; // HWAS state
- l_tuletaProcs[3]->iv_pAProcs[0] = l_tuletaProcs[1];
- l_tuletaProcs[3]->iv_pAProcs[1] = l_tuletaProcs[2];
- l_tuletaProcs[3]->iv_ADeconfigured[0] = true;
- l_tuletaProcs[3]->iv_ADeconfigured[1] = true;
- l_tuletaProcs[3]->iv_pXProcs[0] = l_tuletaProcs[2];
- l_tuletaProcs[3]->iv_XDeconfigured[0] = true;
+ l_tuletaProcs[3].iv_pThisProc = NULL; // Target *
+ l_tuletaProcs[3].procHUID = 3; // HUID
+ l_tuletaProcs[3].procFabricNode = 1; // FABRIC_NODE_ID
+ l_tuletaProcs[3].procFabricChip = 1; // FABRIC_CHIP_ID
+ l_tuletaProcs[3].iv_isMaster = false; // Not master proc
+ l_tuletaProcs[3].iv_deconfigured = true; // HWAS state
+ l_tuletaProcs[3].iv_pAProcs[0] = &l_tuletaProcs[1];
+ l_tuletaProcs[3].iv_pAProcs[1] = &l_tuletaProcs[2];
+ l_tuletaProcs[3].iv_ADeconfigured[0] = true;
+ l_tuletaProcs[3].iv_ADeconfigured[1] = true;
+ l_tuletaProcs[3].iv_pXProcs[0] = &l_tuletaProcs[2];
+ l_tuletaProcs[3].iv_XDeconfigured[0] = true;
// Call _deconfigureAssocProc to determine which procs
@@ -2881,10 +2843,10 @@ public:
}
// Check result
- if (l_tuletaProcs[0]->iv_deconfigured == false &&
- l_tuletaProcs[1]->iv_deconfigured == false &&
- l_tuletaProcs[2]->iv_deconfigured == true &&
- l_tuletaProcs[3]->iv_deconfigured == true)
+ if (l_tuletaProcs[0].iv_deconfigured == false &&
+ l_tuletaProcs[1].iv_deconfigured == false &&
+ l_tuletaProcs[2].iv_deconfigured == true &&
+ l_tuletaProcs[3].iv_deconfigured == true)
{
TS_TRACE(INFO_MRK "testDeconfigureAssocProc8: Success");
}
@@ -2892,12 +2854,7 @@ public:
{
TS_FAIL("testDeconfigureAssocProc8: incorrect configuration returned");
}
- // Free previously allocated memory
- while(!l_tuletaProcs.empty()) delete l_tuletaProcs.back(),
- l_tuletaProcs.pop_back();
}
-
-
};
#endif
OpenPOWER on IntegriCloud