Use this system macro to request Multi-Processor Interconnect Facility
(MPIF) services. See Format for more information about the valid request types.
Required Authorizations
|
Key0
| Restricted
| System
| Common Storage
|
| X
|
|
|
Format
- RTYPE
- This required parameter specifies the type of request being made by the
user. The valid options are:
- IDENTIFY
- This function establishes the existence of a unique, named user that will
communicate with other users of MPIF.
RTYPE=IDENTIFY means that REG contains a pointer to a parameter list
containing the user identification. If REG is not specified, R1 is
assumed. The parameter list is in the form of the DCTMUP DSECT.
An IDTOK is assigned using the IDENTIFY function. It associates the
user with MPIF resources and is required for other MPIF functions. The
token is returned in the IDTOK field in the user's parameter list.
- CONNECT
- This function attempts to establish a logical connection between the
calling user and the user named in the parameter list.
- ACCEPT
- This function attempts to complete a logical connection between the
calling user and the user name in the parameter list.
- DISCONNECT
- This function breaks a logical connection between the calling user and the
user named in the parameter list.
- FORGET
- This function is the opposite of IDENTIFY. Any connections
involving the calling user are disconnected. All knowledge of the user
is eliminated.
- QUERY
- This function formats directory information into an area of storage
provided by you.
- SEND
- This function normally schedules the transfer of data across a logical
connection. SEND is also used to control pacing values to the other
side of a connection.
- REG=R1|Rx
- The symbolic name of a general register (R0 through R7 inclusive) which
contains the address of the parameter list, defined in DCTMUP, associated with
the service request. R1 is the default.
- ADSPACE
- This parameter is only valid when issued by C-type code and is used to
indicate the address space in which the code is processing.
- EVM
- The program that issued the MPIFC is running in the ECB virtual memory
(EVM). This is the default.
- SVM
- The program that issued the MPIFC is running in the system virtual memory
(SVM).
Entry Requirements
R14 and R15 must be available for use by this macro.
Return Conditions
- Control is returned to the next sequential instruction (NSI).
- IDENTIFY:
- R15 contains a return code describing the completion of the IDENTIFY
processing using the following indications.
- Return Code
- Meaning
- 00
- Normal completion. The MPIF IDENTIFY token (IDTOK) is returned in
field IDTOK of the user's parameter list.
- 04
- The user name (MYNAME of the IDENTIFY parameter list) is in use.
- 12
- Unable to process due to lack of MPIF control storage.
- 20
- At least one parameter value is not valid.
- CONNECT:
- R15 contains a return code describing the completion of the CONNECT
processing using the following indications.
- Return Code
- Meaning
- 00
- Normal completion; request proceeding.
- 04
- Connections between 2 users exist over all paths (used when multipathing
is selected).
- 08
- No active paths exist to the specified user.
- 208
- At least one parameter value is not valid.
- ACCEPT:
- R15 contains a return code describing the completion of the ACCEPT
processing using the following indications.
- Return Code
- Meaning
- 00
- Normal completion; request proceeding.
- 20
- At least one parameter value is not valid.
- DISCONNECT:
- R15 contains a return code describing the completion of the DISCONNECT
processing using the following indications.
- Return Code
- Meaning
- 00
- Normal completion; request proceeding.
- 00
- At least one parameter value is not valid.
- FORGET:
- R15 contains a return code describing the completion of the FORGET
processing using the following indications.
- Return Code
- Meaning
- 00
- Normal completion; request proceeding. No further reference to
the entity is possible.
- 20
- 20-At least one parameter value is not valid.
- QUERY:
- R15 contains a return code describing the completion of the QUERY
processing using the following indications.
- Return Code
- Meaning
- 00
- Normal completion (for example, a successful QUERY).
- 04
- Feedback area too small, contains partial response.
- 20
- At least one parameter value is not valid or a format problem with the
parameter list.
- The address of the QUERY reply parameter area will be returned in the user
specified register (REG parameter).
- SEND:
- R15 contains a return code describing the completion of the SEND
processing using the following indications.
- Return Code
- Meaning
- 00
- Normal completion; the SEND is scheduled. The SEND parameter
list contains the connection sequence number assigned to the SEND. The
initial SEND will be assigned a sequence number of 1. The sequence
number is a 32 bit logical value and will wrap to zero.
- 04
- MPIF output queue has exceeded the maximum depth. Retry this SEND
request again shortly.
- 08
- The path or connection is not active.
- 12
- Currently unused. Reserved for IBM use only.
- 16
- No pacing credit available. The buffer has not been sent. It
is returned to the caller.
- 20
- At least one parameter value is not valid.
- The contents of all other registers are preserved across this macro
call.
Programming Considerations
- This macro may be processed on any I-stream.
- The MPIFC macro has an interface that is not guaranteed across releases of
the TPF system. Unauthorized use of this macro may expose you to
interface or processing errors.
- This macro is intended for use by system programmers doing system level
coding for support or utility programs.
- You cannot include the parameter list in the same core block with data
area 2.
Examples
None.