EFI_STATUS Status;\r
UINT32 TableSize;\r
UINT32 ProcTopologyStructCount;\r
+ UINT32 ProcHierarchyNodeCount;\r
+ UINT32 CacheStructCount;\r
+ UINT32 IdStructCount;\r
\r
UINT32 ProcHierarchyNodeOffset;\r
UINT32 CacheStructOffset;\r
CfgMgrProtocol,\r
CM_NULL_TOKEN,\r
&ProcHierarchyNodeList,\r
- &Generator->ProcHierarchyNodeCount\r
+ &ProcHierarchyNodeCount\r
);\r
if (EFI_ERROR (Status)) {\r
DEBUG ((\r
goto error_handler;\r
}\r
\r
- ProcTopologyStructCount = Generator->ProcHierarchyNodeCount;\r
+ ProcTopologyStructCount = ProcHierarchyNodeCount;\r
+ Generator->ProcHierarchyNodeCount = ProcHierarchyNodeCount;\r
\r
// Get the cache info and update the processor topology structure count with\r
// Cache Type Structures (Type 1)\r
CfgMgrProtocol,\r
CM_NULL_TOKEN,\r
&CacheStructList,\r
- &Generator->CacheStructCount\r
+ &CacheStructCount\r
);\r
if (EFI_ERROR (Status) && (Status != EFI_NOT_FOUND)) {\r
DEBUG ((\r
goto error_handler;\r
}\r
\r
- ProcTopologyStructCount += Generator->CacheStructCount;\r
+ ProcTopologyStructCount += CacheStructCount;\r
+ Generator->CacheStructCount = CacheStructCount;\r
\r
// Get the processor hierarchy node ID info and update the processor topology\r
// structure count with ID Structures (Type 2)\r
CfgMgrProtocol,\r
CM_NULL_TOKEN,\r
&IdStructList,\r
- &Generator->IdStructCount\r
+ &IdStructCount\r
);\r
if (EFI_ERROR (Status) && (Status != EFI_NOT_FOUND)) {\r
DEBUG ((\r
goto error_handler;\r
}\r
\r
- ProcTopologyStructCount += Generator->IdStructCount;\r
+ ProcTopologyStructCount += IdStructCount;\r
+ Generator->IdStructCount = IdStructCount;\r
\r
// Allocate Node Indexer array\r
NodeIndexer = (PPTT_NODE_INDEXER*)AllocateZeroPool (\r
\r
// Processor topology node count\r
0,\r
+ // Count of Processor Hierarchy Nodes\r
+ 0,\r
+ // Count of Cache Structures\r
+ 0,\r
+ // Count of Id Structures\r
+ 0,\r
// Pointer to PPTT Node Indexer\r
NULL\r
};\r