Programming Interface Information:
This information is NOT intended to be used as Programming Interfaces of z/VM. |
MTPBK
Control Block Contents
MTPBK DSECT
Cross Reference (Contains links to field and bit definitions)
MTPBK Prolog
NAME : HCPMTPBK DESCRIPTION: MEMBER TOPOLOGY PACKET This copy file contains: MTPBK DSECT which maps a Member Topology Packet (MTP) MTRTABLE MACRO that is used to define the synchronization request router table MTRTABL DSECT which maps a router table entry DSECT : MTPBK FUNCTION : Used to transmit Relocation Domain topology to other members of the SSI. The MTPBK is used in four circumstances: 1) To propagate a DEFINE DOMAIN request from the member that receives the user's command to other members of the SSI. 2) To propagate notification of a concurrent upgrade to members of the SSI. 3) For resynchronization purposes when a member rejoins the SSI following a transition out of safe mode. 4) For synchronization purposes when a member first joins the SSI cluster. Each of these four uses requires different processing on the receiving system. Therefore a router worker ID is included in the MTP to allow the receiving thread to route the MTP correctly. Router table entries comprise the worker routine address with a flag to indicate whether they are invoked synchronously or asynchronously using a deferred call. Synchronous calls return an MTP from the receive in the SEND_REPLY message. Asynchronous calls return a SEND_REPLY VOTE=YES as soon as the worker has been scheduled. No MTP response is sent back. The worker routines are responsible for freeing their input MTP. LOCATED BY : In the message buffer portion of an MBHBK CREATED BY : HCPRDMBT DELETED BY : Synchronization worker routines once they are finished their work. SERIALIZED : The VAAXLK will be held during processing that uses MTPBKs. RELOCATION CONSIDERATIONS : None
MTPBK Control Block Content
MTPBK DSECT
Hex Dec Type/Val Lng Label (dup) Comments ---- ---- --------- ---- -------------- -------- 0000 0 Structure MTPBK MEMBER TOPOLOGY PACKET 0000 0 Signed 4 MTPLEN Length of MTPBK in bytes 0004 4 Signed 4 MTPSNDX Sending member's index 0008 8 Signed 4 MTPCVN Comms Version for domain sync operations MTPCVN is used to identify the communications protocol version used by cross-SSI Domain and ARD synchronization. The VAACVN is stored in the Member Topology Packet in MTPCVN to alert a remote member of the version of the comms structures and protocols in use by the CP. When a MTPBK is created MTPCVN is populated with MTPCVER. 00000001 MTPCV1 1 Comms Version 1 00000002 MTPCV2 2 Comms Version 2 00000003 MTPCV3 3 Comms Version 3 00000004 MTPCV4 4 Comms Version 4 00000005 MTPCV5 5 Comms Version 5 00000006 MTPCV6 6 Comms Version 6 00000007 MTPCV7 7 Comms Version 7 00000008 MTPCV8 8 Comms Version 8 00000009 MTPCV9 9 Comms Version 9 00000001 MTPCVER MTPCV1 Comms Version supported by this CP 000C 12 Signed 4 MTPRID Router Worker Id (or Request ID) 0010 16 Signed 4 MTPSEQ State sequence number for this request. For synchronization requets this will be set to the sender's VAASEQ. For new DEF RELO requets this will be set to the sender's next state (VAASEQN) 0014 20 Signed 4 MTPDCT Number of Domain Entries in Packet 0018 24 Bitstring 1 MTPFLAGS Flags for the message 1... .... MTPGLOCK X'80' MTPGLOCK Indicates that the requester has acquired the VAAXLK lock globally. If this bit is OFF, the receiver(s) of this packet must get the lock locally before doing the necessary processing. If it is ON, the receiver must call HCPXLKUU to inform the lock manager it will release the lock. 0019 25 Bitstring 3 * Reserved for future IBM use 001C 28 Signed 4 MTPXLUNQ Value of XLKUNQ after the global lock was obtained. This is passed to the remote system which then passes it to HCPXLKUU to register that the remote worker routine is now responsible for releasing the lock on that system 00000020 MTPHLEN *-MTPBK MTP Header length The rest of the MTPBK is variable length depending on the number of domains in the member's topology. There is one MTPENT for each domain in the member's topology. They are appended here as an array of MTPENTs one after the other. MTPDCT contains the count of entries appended in the packet. 0020 32 Bitstring 12 MTPENT Domain Entry 0020 32 Character 8 MTPDNM Domain Name 0028 40 Bitstring 4 MTPDMM Domain Membership Mask. Zero mask signals domain deletion. 0000000C MTPENTL L'MTPENT Length of a domain entry (bytes) 00000004 MTPHDDWL (MTPHLEN+7)/8 Length of an MTP header (DWs) Mapping DSECT for the MTP Router Table
MTPBK Storage Layout
*** MTPBK - MEMBER TOPOLOGY PACKET * * +---------------------------+---------------------------+ * 0 | MTPLEN | MTPSNDX | * +---------------------------+---------------------------+ * 8 | MTPCVN | MTPRID | * +---------------------------+---------------------------+ * 10 | MTPSEQ | MTPDCT | * +------+--------------------+---------------------------+ * 18 |:FLAGS|////////////////////| MTPXLUNQ | * +------+--------------------+---------------------------+ * 20 | MTPENT | * | +---------------------------+ * | | 2C * +---------------------------+ * *** MTPBK - MEMBER TOPOLOGY PACKET *** Overlay for MTPENT in MTPBK * * +-------------------------------------------------------+ * 20 | MTPDNM | * +---------------------------+---------------------------+ * 28 | MTPDMM | 2C * +---------------------------+ * *** Overlay for MTPENT in MTPBK
MTPBK Cross Reference
Symbol Dspl Value -------------- ---- ----- MTPCVER 0008 00000001 MTPCVN 0008 MTPCV1 0008 00000001 MTPCV2 0008 00000002 MTPCV3 0008 00000003 MTPCV4 0008 00000004 MTPCV5 0008 00000005 MTPCV6 0008 00000006 MTPCV7 0008 00000007 MTPCV8 0008 00000008 MTPCV9 0008 00000009 MTPDCT 0014 MTPDMM 0028 MTPDNM 0020 MTPENT 0020 MTPENTL 0028 0000000C MTPFLAGS 0018 MTPGLOCK 0018 80 MTPHDDWL 0028 00000004 MTPHLEN 001C 00000020 MTPLEN 0000 MTPRID 000C MTPSEQ 0010 MTPSNDX 0004 MTPXLUNQ 001C
Copyright IBM Corporation, 1990, 2011