summaryrefslogtreecommitdiffstats
path: root/src/usr/runtime
diff options
context:
space:
mode:
Diffstat (limited to 'src/usr/runtime')
-rw-r--r--src/usr/runtime/populate_hbruntime.C9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/usr/runtime/populate_hbruntime.C b/src/usr/runtime/populate_hbruntime.C
index 745be97b9..d8faf94dd 100644
--- a/src/usr/runtime/populate_hbruntime.C
+++ b/src/usr/runtime/populate_hbruntime.C
@@ -2408,6 +2408,7 @@ errlHndl_t populate_hbRuntimeData( void )
else
{
// multi-node system
+ uint64_t payloadBase = sys->getAttr<TARGETING::ATTR_PAYLOAD_BASE>();
// populate our own node specific data + the common stuff
l_elog = populate_HbRsvMem(nodeid,true);
@@ -2455,6 +2456,7 @@ errlHndl_t populate_hbRuntimeData( void )
msg->type = IPC::IPC_POPULATE_ATTRIBUTES;
msg->data[0] = l_node; // destination node
msg->data[1] = nodeid; // respond to this node
+ msg->extra_data = reinterpret_cast<uint64_t*>(payloadBase);
// send the message to the slave hb instance
l_elog = MBOX::send(MBOX::HB_IPC_MSGQ, msg, l_node);
@@ -2708,5 +2710,12 @@ errlHndl_t openUntrustedSpCommArea()
return l_err;
}
+void setPayloadBaseAddress(uint64_t i_payloadAddress)
+{
+ TARGETING::Target * sys = NULL;
+ TARGETING::targetService().getTopLevelTarget( sys );
+ sys->setAttr<TARGETING::ATTR_PAYLOAD_BASE>(i_payloadAddress);
+}
+
} //namespace RUNTIME
OpenPOWER on IntegriCloud