Programming Interface Information:
This page documents intended Programming Interfaces that
allow the customer to write programs to obtain the services of z/VM.

VMCMHDR

Prolog  

Control Block Contents  
   VMCMHDR DSECT

Storage Layout  

Cross Reference (Contains links to field and bit definitions)  


VMCMHDR Prolog

 NAME       : VMCMHDR
 DESCRIPTION: VMCF COMMUNICATION MESSAGE HEADER
 DSECT      : VMCMHDR
 FUNCTION   : VMCMHDR PROVIDES INFORMATION TO IDENTIFY THE SPECIAL
              VMCF EXTERNAL INTERRUPTS.
 LOCATED BY : XMCMHDR   FIELD IN MODULE HCPRET
              RECVMCHA  FIELD IN MODULE HCPREC
              VMCVADA   FIELD IN VMCBLOCK
              VMCPVADA  FIELD IN VMCPARM
 CREATED BY : HCPREC (FOR CP VMCF COMMUNICATION)
              A VIRTUAL MACHINE INVOKING VMCF
 DELETED BY : A VIRTUAL MACHINE
 RELOCATION CONSIDERATIONS : None

 

VMCMHDR Control Block Content


VMCMHDR DSECT

Hex   Dec Type/Val   Lng Label (dup)    Comments
---- ---- --------- ---- -------------- --------
0000    0 Structure      VMCMHDR        VMCF COMMUNICATION MESSAGE HEADER
0000    0 Bitstring    1 VMCMSTAT       MESSAGE STATUS BYTE
          1... ....      VMCMRESP       X'80' VMCMRESP FINAL RESPONSE
                                        INTERRUPT
          .1.. ....      VMCMRJCT       X'40' VMCMRJCT MESSAGE REJECTED
          ..1. ....      VMCMPRTY       X'20' VMCMPRTY PRIORITY MESSAGE
0001    1 Bitstring    1 VMCMEFLG       DATA TRANSFER RETURN CODE
          00000001       VMC01          1 VMC01 INVALID VIRTUAL ADDRESS
          00000002       VMC02          2 VMC02 INVALID SUB-FUNCTION CODE
          00000003       VMC03          3 VMC03 PROTOCOL VIOLATION
          00000004       VMC04          4 VMC04 USER NOT AUTHORIZED
                                        (SOURCE)
          00000005       VMC05          5 VMC05 USER NOT AVAILABLE
          00000006       VMC06          6 VMC06 PROTECTION VIOLATION
          00000007       VMC07          7 VMC07 SENDX DATA TOO LARGE
          00000008       VMC08          8 VMC08 DUPLICATE MESSAGE
          00000009       VMC09          9 VMC09 TARGET VM QUIESCING
          0000000A       VMC10          10 VMC10 MESSAGE LIMIT EXCEEDED
          0000000B       VMC11          11 VMC11 CANCEL - REPLY CANCELLED
          0000000C       VMC12          12 VMC12 MESSAGE NOT FOUND
          0000000D       VMC13          13 VMC13 SYNCHRONIZATION ERROR
          0000000E       VMC14          14 VMC14 CANCEL - TOO LATE
          0000000F       VMC15          15 VMC15 PAGING I/O ERROR
          00000010       VMC16          16 VMC16 INCORRECT LENGTH
          00000011       VMC17          17 VMC17 DESTRUCTIVE OVERLAP
          00000012       VMC18          18 VMC18 USER NOT AUTHORIZED
                                        PRIORITY
          00000013       VMC19          19 VMC19 DATA TRANSFER ERROR
          00000014       VMC20          20 VMC20 CANCEL - BUSY
0002    2 Bitstring    2 VMCMFUNC       SUB-FUNCTION CODE (ORIGINAL REQ)
          00000002       VMCMSEND       2 VMCMSEND SEND
          00000003       VMCMSENR       3 VMCMSENR SEND/RECV
          00000004       VMCMSENX       4 VMCMSENX SENDX
          0000000A       VMCMIDEN       10 VMCMIDEN IDENTIFY
0004    4 Signed       4 VMCMMID        MESSAGE IDENTIFIER
0008    8 Dbl-Word     8 VMCMUSER       SOURCE / SINK USERID (VMUSER)
0010   16 Signed       4 VMCMVADA       VIRTUAL BUFFER ADDRESS
0014   20 Signed       4 VMCMLENA       MESSAGE LENGTH
0018   24 Signed       4 VMCMVADB       VIRTUAL REPLY BUFFER ADDRESS
001C   28 Signed       4 VMCMLENB       REPLY BUFFER LENGTH
0020   32 Dbl-Word     8 VMCMUSE (0)    USER SUPPLIED DOUBLE-WORD
0020   32 Signed       2 VMCMUSPC       USER SUPPLIED PROTOCOL
0022   34 Bitstring    6 *              REST OF USER SUPPLIED DOUBLE-WORD
      THE FOLLOWING FIELD IS OPTIONAL AND EXISTS ONLY IN THE
      CASE OF SENDX PROTOCOL.
0028   40 Character    1 VMCMBUF (0)    START OF VARIABLE LENGTH DATA
          00000028       VMCMLEN        (*-VMCMHDR) LENGTH OF VMCMHDR
                                        (BYTES)
             GENERAL VM COMMUNICATION EQUATES
          00000032       VMCSMAX        50 MAXIMUM ACTIVE MESSAGE LIMIT
          00004001       VMCXCODE       X'4001' VMCF EXTERNAL INTERRUPT
                                        CODE
          .... ...1      VMCXMASK       X'0001' VMCF CR0 EXTERNAL
                                        INTERRUPT MASK

 

VMCMHDR Storage Layout

          
*** VMCMHDR - VMCF COMMUNICATION MESSAGE HEADER
*
*     +------+------+-------------+---------------------------+
*   0 |:MSTAT|:MEFLG|  VMCMFUNC   |         VMCMMID           |
*     +------+------+-------------+---------------------------+
*   8 |                       VMCMUSER                        |
*     +---------------------------+---------------------------+
*  10 |         VMCMVADA          |         VMCMLENA          |
*     +---------------------------+---------------------------+
*  18 |         VMCMVADB          |         VMCMLENB          |
*     +-------------+-------------+---------------------------+
*  20 |  VMCMUSPC   |/////////////////////////////////////////|
*     +-------------+-----------------------------------------+
*
*** VMCMHDR - VMCF COMMUNICATION MESSAGE HEADER

 

VMCMHDR Cross Reference

Symbol         Dspl Value
-------------- ---- -----
VMCMBUF        0028
VMCMEFLG       0001
VMCMFUNC       0002
VMCMIDEN       0002 0000000A
VMCMLEN        0028 00000028
VMCMLENA       0014
VMCMLENB       001C
VMCMMID        0004
VMCMPRTY       0000 20
VMCMRESP       0000 80
VMCMRJCT       0000 40
VMCMSEND       0002 00000002
VMCMSENR       0002 00000003
VMCMSENX       0002 00000004
VMCMSTAT       0000
VMCMUSE        0020
VMCMUSER       0008
VMCMUSPC       0020
VMCMVADA       0010
VMCMVADB       0018
VMCSMAX        0028 00000032
VMCXCODE       0028 00004001
VMCXMASK       0028 01
VMC01          0001 00000001
VMC02          0001 00000002
VMC03          0001 00000003
VMC04          0001 00000004
VMC05          0001 00000005
VMC06          0001 00000006
VMC07          0001 00000007
VMC08          0001 00000008
VMC09          0001 00000009
VMC10          0001 0000000A
VMC11          0001 0000000B
VMC12          0001 0000000C
VMC13          0001 0000000D
VMC14          0001 0000000E
VMC15          0001 0000000F
VMC16          0001 00000010
VMC17          0001 00000011
VMC18          0001 00000012
VMC19          0001 00000013
VMC20          0001 00000014

This information is based on z/VM V6R2.0. Last updated on 21 Nov 2011 at 11:37:01 EDT.
Copyright IBM Corporation, 1990, 2011