This system macro provides a way to synchronize important recoup control
information across processors that are in a loosely coupled TPF
complex.
Format
- label
- is a symbolic name that can be assigned to the macro statement.
- LOCK
- requests exclusive use of the recoup control record or data. The
core copy of the data will be refreshed.
- UNLK
- releases the exclusive use of the recoup control record. The
control record must have been locked before the UNLK request.
- SYNC
- requests synchronization of recoup data in active loosely coupled
processors. The control record is filed and unheld. An
interprocessor communications (IPC) message is sent to the active processors
to refresh their copies of the data. The control record must have been
locked before the SYNC request.
Entry Requirements
- Register 9 (R9) must contain the address of the entry control block (ECB)
being processed.
- The entry must not be holding the recoup data at the time of a LOCK
request.
- The entry must be holding the recoup data at the time of a UNLK or SYNC
request.
- There should not be any outstanding I/O requests for this ECB.
- The LOCK condition should not be carried across an ENTxC macro.
Return Conditions
- The contents of R14 and R15 are unknown. The contents of
R0-R7 are preserved across this macro call.
- LOCK option:
- Control is returned to the next sequential instruction (NSI).
- The program status word (PSW) protect key of the ECB equals
X'C'.
- SYNC option:
- The PSW protect key of the ECB equals X'1'.
- UNLK option:
- The PSW protect key of the ECB equals X'1'.
Programming Considerations
None.
Examples
The following example shows recoup data being locked before processing user
code and synchronizing recoup data after the code has completed
processing.
BSYNC LOCK
.....
BEGIN PROCESSING CODE
.
.
.
END PROCESSING CODE
.....
BYSNC SYNC