Skip to content

Commit

Permalink
Factor in fabric group on multinode systems
Browse files Browse the repository at this point in the history
Change-Id: I55143c18cf5ff518156df7586a520fc995dc5872
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/52453
Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
Reviewed-by: Prachi Gupta <pragupta@us.ibm.com>
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
  • Loading branch information
sannerd authored and dcrowell77 committed Jan 25, 2018
1 parent 2935800 commit 4606e77
Showing 1 changed file with 9 additions and 8 deletions.
17 changes: 9 additions & 8 deletions src/usr/targeting/namedtarget.C
Expand Up @@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
/* Contributors Listed Below - COPYRIGHT 2012,2016 */
/* Contributors Listed Below - COPYRIGHT 2012,2018 */
/* [+] International Business Machines Corp. */
/* */
/* */
Expand Down Expand Up @@ -58,8 +58,8 @@ namespace TARGETING
const TARGETING::Target * getMasterCore( )
{
task_affinity_pin();
task_affinity_migrate_to_master();
uint64_t l_masterCoreID = PIR_t::coreFromPir(task_getcpuid());
task_affinity_migrate_to_master(); //This gets us master core, thread 0
PIR_t l_masterPIR = PIR_t(task_getcpuid());
task_affinity_unpin();

const TARGETING::Target * l_masterCore = NULL;
Expand All @@ -78,8 +78,9 @@ const TARGETING::Target * getMasterCore( )
true );

TRACFCOMP( g_trac_targeting,
"getMasterCore: found %d cores on master proc, l_mastreCoreID:0x%X",
l_cores.size(),l_masterCoreID );
"getMasterCore: found %d cores on master proc,"
"l_masterCore PIR:0x%X",
l_cores.size(),l_masterPIR.word );

for (TARGETING::TargetHandleList::const_iterator
coreIter = l_cores.begin();
Expand All @@ -91,13 +92,13 @@ const TARGETING::Target * getMasterCore( )
CHIP_UNIT_ATTR l_coreId =
l_core->getAttr<TARGETING::ATTR_CHIP_UNIT>();

uint64_t pir = PIR_t::createCoreId(l_logicalGroupId, l_chipId, l_coreId);
PIR_t l_corePIR = PIR_t(l_logicalGroupId, l_chipId, l_coreId);

if (pir == l_masterCoreID){
if (l_corePIR == l_masterPIR){
TRACFCOMP( g_trac_targeting,
"found master core: 0x%x, PIR=0x%x :",
l_coreId,
pir );
l_corePIR.word );
EntityPath l_path;
l_path = l_core->getAttr<ATTR_PHYS_PATH>();
l_path.dump();
Expand Down

0 comments on commit 4606e77

Please sign in to comment.