Function
The osi_selpost service posts a
process that is waiting because of a select request.
Requirements
Operation |
Environment |
---|
Authorization: |
Problem or supervisor state, any PSW key |
Dispatchable unit mode: |
Task or SRB |
Cross memory mode: |
Any |
AMODE: |
31-bit |
ASC mode: |
Any |
Interrupt status: |
Enabled for interrupts |
Locks: |
Unlocked |
Control parameters: |
All parameters must be addressable by the caller and in the
primary address space. |
Format
osi_selpost(Select_token,
Return_value,
Return_code,
Reason_code);
Parameters
- Select_token
- Supplied parameter
- Type:
- Token
- Length:
- 16 bytes
Select_token is the token that was saved by the
PFS when it was called for the select query request. The PFS does
not need to be aware of the contents of this field; it just needs
to save it on the select request and pass it to this module when it
is time to post.
- Return_value
- Returned parameter
- Type:
- Integer
- Length:
- Fullword
A fullword in which the osi_selpost operation returns
the results of the operation, as one of the following:
- Return_value
- Meaning
- -1
- The operation was not successful.
- 0
- The operation was successful.
- Return_code
- Returned parameter
- Type:
- Integer
- Length:
- Fullword
A fullword in which the osi_selpost operation stores
the return code. The osi_selpost operation returns Return_code only
if Return_value is -1. For a complete list of supported
return code values, see z/OS UNIX System Services Messages and Codes.
- Reason_code
- Returned parameter
- Type:
- Integer
- Length:
- Fullword
A fullword in which the osi_selpost operation stores
the reason code. The osi_selpost operation returns Reason_code only
if Return_value is -1. Reason_code further qualifies
the Return_code value.
Usage notes
- For additional information, see Select/poll processing.
- The task that is posted is the task that is represented by Select_token.
Before a PFS uses osi_selpost, it should copy the Select_token to
a place that is addressable by the task that will perform the osi_selpost.
- The PFS must never call osi_selpost for a waiting process more
than once, and it should have sufficient logic and recovery to avoid
calling osi_selpost for a task that is no longer waiting.
- The address of the osi_selpost routine is passed to the PFS in
the OSIT structure when the PFS is initialized.
Characteristics and restrictions
The caller
of this service must be on a process thread.