SVC 56 (0A38)

ENQ RESERVE macro - is type 2, gets LOCAL and CMSEQDQ locks.

Calls module ISGGRT.

GTF data is:
R15 and R0
No applicable data.
R1
Address of the parameter list.
PLIST
36 bytes of the ENQ/RESERVE parameter list, representing an ENQ request for a single resource. The complete parameter list can include requests for additional resources; the last request is identified by a flag bit described below.
-20
Reserved.
-16
If an MASID ENQ and an ECB is specified, contains the ECB address.
-12
If an MASID ENQ, contains the MASID operand value.
-8
If an MASID ENQ, contains the MTCB operand value; otherwise, contains the TCB address if both the TCB and the ECB are specified.
-4
If an MASID ENQ, contains the format word of decimal 20; otherwise, contains the TCB or the ECB address depending on whether TCB= or ECB= was specified. (See the flag bytes following.)
0
Flag bits, as follows:
     
.... .0.. RNL=YES
1... .... End-of-list indicator; if zero, the parameter list includes another resource request.
.1.. .... Old options are in effect (bits have no meaning).
.01. .... Indicates LOC=ANY specified on a RESERVE request. The UCB may reside in 31-bit storage.
.0.1 .... Indicates that the requester of the resource now owns the resource and the resource is shared. If zero, the resource is owned exclusively.
.0.. 1... Format word indicator. If zero, the list of PELS does not have the MASID format prefix.
.0.. ...1 TCB=tcbaddr was requested; parmlist prefix contains the TCB address.
1
Length of the minor name whose address is in bytes 8 - 11 of this element. Zeros indicates the length of minor name is in the first byte of the minor name field whose address is in bytes 8 - 11 of this element (does not include the length byte itself).
2
ENQ parameters byte; bit settings are:
     
0... .... Exclusive request.
1... .... Shared request.
.0.. 0... Scope of the minor name is STEP.
.0.. 1... RESERVE type. The resource is known across systems and UCB= was specified. The last word of the parameter list is the address of a word containing the UCB address.
.1.. 0... Scope of the minor name is SYSTEM.
.1.. 1... Scope of the minor name is SYSTEMS.
..1. .... Obsolete.
...1 .... Set must complete equal to STEP.
.... .000 RET=NONE.
.... .001 RET=HAVE.
.... .010 RET=CHNG.
.... .011 RET=USE.
.... .100 ECB=addr. The ECB address is contained in the parameter list prefix.
.... .111 RET=TEST.
3
Field for codes returned to the issuer by ENQ.
4-7
Address of the major resource name (QNAME).
8-11
Address of the minor resource name (RNAME).
12-15
If bits 1 and 4 of the ENQ parameter byte are set to 0 and 1 respectively, this word contains the address of a word containing the UCB address; otherwise, the content of this word will be zero.
Note: RESERVE is basically an ENQ with UCB= specified. See flag byte 2 above.
Register contents on return (provided only if RET=TEST, RET=USE, RET=CHNG, or RET=HAVE):
R15
00 if each return code for each resource named in ENQ is 0. Otherwise, R15 contains the address of a storage area containing the return codes.