SBL_SendMsg
SBL_SendMsg sends a message using deliberate update.
Synopsis:
error = SBL_SendMsg(Int32* sendAddr, Int32* destAddr, int nwords)
Parameters:
IN Int32 *sendAddr: address of the data to be sent. It can be any
address corresponding to allocated data.
IN Int32* destAddr: address in local DestSpace corresponding
to an imported receive buffer.
IN int nwords: size of the message in SHRIMP words.
Description:
SBL_SendMsg sends a message of nwords taken from
address sendAddr. SBL_SendMsg returns after message has
been transferred to the network.
destAddr determines the destination of the data. destAddr
is a proxy address in the caller's DestSpace. Since each
DestSpace address belongs to no more than one proxy, this
identification is unique. The data will be put in receive buffer on the
destination node starting from offset equal to offset of destAddr
from the beginning of this buffer proxy in local DestSpace.
Both sendAddr and destAddr should be SHRIMP word aligned.
Both destAddr (destination address of the first word) and
(destAddr + 4 nwords -1) (destination address of the last word)
should belong to the same imported receive buffer.
SBL_SendMsg can be used from within a notification handler.
Return Values:
SBL_SendMsg returns 0 on success or negative error code on
failure. Page faults are possible if sendAddr or destAddr
does not correspond to valid addresses.
Copyright (c) 1995,
Princeton University