Programming Interface Information: This information is NOT intended to be used as Programming Interfaces of z/VM.

#### MDGBK

Prolog

Control Block Contents
MDGBK DSECT

Storage Layout

Cross Reference (Contains links to field and bit definitions)

#### MDGBK Prolog

     NAME       : HCPMDGBK
     DESCRIPTION: MONDIAG control block
     COPYRIGHT -
                  THIS MODULE IS "RESTRICTED MATERIALS OF IBM"
                  5739-A03 (C) COPYRIGHT IBM CORP. - 2001, 2002
                  LICENSED MATERIALS - PROPERTY OF IBM
     DSECT      : MDGBK
     FUNCTION   : Information relating to an application buffer
                  created by the virtual machine via Diagnose 'DC'.
     LOCATED BY : MNDA_MDGBK_LHEAD:  Beginning of MONDIAG chain
                  MNDA_MDGBK_LTAIL:  End of MONDIAG chain
     CREATED BY : HCPMXPDC        Diagnose 'DC' START processing
                  HCPMXSEV        Diagnose 'DC' EVENT processing
                  HCPMXTCF        Diagnose 'DC' CONFIG processing
     DELETED BY : HCPMXSSP        Diagnose 'DC' STOP  processing
                  HCPMXSEV        Diagnose 'DC' EVENT processing
     REFERENCES : none
     SERIALIZED : The chain of HCPMDGBKs is serialized by the defer
                  lock MNDA_MDGBK_LOCK, which is located in HCPMNDBK.
     NOTES      : -- An MDGBK is created for each invocation of Diagnose 'DC' START
                  -- An MDGBK is deleted under the following circumstances:
                  - When a Diagnose 'DC' STOP is issued
                  - When a virtual storage reset is detected
                  - When a segment purge occurs and it is determined
                  that an application buffer resides within the
                  address range of the NSS that is to be purged

#### MDGBK Control Block Content

#### MDGBK DSECT

    Hex   Dec Type/Val   Lng Label (dup)    Comments
    ---- ---- --------- ---- -------------- --------
    0000    0 Structure      MDGBK          MONDIAG control block
    0000    0 Address      4 MDG_NEXT       Pointer to next MDGBK block in
                                            chain
    0004    4 Address      4 MDG_PREV       Pointer to previous MDGBK block
                                            in chain
    0008    8 Address      4 MDG_APBUF_GAA1 Guest absolute address of the
                                            first page of the application
                                            buffer associated with this MDGBK
    000C   12 Address      4 MDG_APBUF_GAA2 Guest absolute address of the
                                            second page of the application
                                            buffer associated with this
                                            MDGBK. Applicable only when the
                                            application buffer crosses a page
                                            boundary, otherwise set to FFs.
    0010   16 Character   16 MDG_PROD_ID    Product-id and release id of the
                                            application placing the data in
                                            the buffer
    0020   32 Address      4 MDG_VMDKB_ADDR Address of the Base VMDBK that
                                            owns this application buffer
    0024   36 Address      2 MDG_BUFF_LEN   Total length (in bytes) of the
                                            application buffer. It will
                                            always be the sum of
                                            MDG_BUFF_LEN1 and MDG_BUFF_LEN2
    0026   38 Address      2 MDG_BUFF_LEN1  Length (in bytes) of the first
                                            page of the application buffer
    0028   40 Address      2 MDG_BUFF_LEN2  Length (in bytes) of the second
                                            page of the application buffer.
                                            Set to 0 unless the buffer
                                            crosses a page boundary.
    002A   42 Bitstring    1 MDG_STATUS     Status flags
    002B   43 Bitstring    1 *              Reserved for IBM use
    002C   44 Address      4 MDG_SNTBK_ADDR1
                                            Address of the 1st SNTBK if the
                                            application buffer address is
                                            within a saved segment
    0030   48 Address      4 MDG_SNTBK_ADDR2
                                            Address of the 2nd SNTBK if the
                                            application buffer address is
                                            within two saved segements
    0034   52 Bitstring    4 *              Reserved for IBM use
              00000038       MDG$END        *
              00000007       MDGSIZE        (MDG$END-MDGBK+7)/8 MDGBK size in
                                            doublewords

#### MDGBK Storage Layout

    *** MDGBK - MONDIAG control block
    *
    *     +---------------------------+---------------------------+
    *   0 |         MDG_NEXT          |         MDG_PREV          |
    *     +---------------------------+---------------------------+
    *   8 |      MDG_APBUF_GAA1       |      MDG_APBUF_GAA2       |
    *     +---------------------------+---------------------------+
    *  10 |                     MDG_PROD_ID                       |
    *     |                                                       |
    *     +---------------------------+-------------+-------------+
    *  20 |      MDG_VMDKB_ADDR       |MDG_BUFF_LEN |MDG_BUFF_LEN1|
    *     +-------------+------+------+-------------+-------------+
    *  28 |MDG_BUFF_LEN2|(02A) |//////|     MDG_SNTBK_ADDR1       |
    *     +-------------+------+------+---------------------------+
    *  30 |     MDG_SNTBK_ADDR2       |///////////////////////////|
    *     +---------------------------+---------------------------+
    *  38
    *
    *** MDGBK - MONDIAG control block

#### MDGBK Cross Reference

    Symbol         Dspl Value
    -------------- ---- -----
    MDG$END        0034 00000038
    MDG_APBUF_GAA1
                   0008
    MDG_APBUF_GAA2
                   000C
    MDG_BUFF_LEN   0024
    MDG_BUFF_LEN1  0026
    MDG_BUFF_LEN2  0028
    MDG_NEXT       0000
    MDG_PREV       0004
    MDG_PROD_ID    0010
    MDG_SNTBK_ADDR1
                   002C
    MDG_SNTBK_ADDR2
                   0030
    MDG_STATUS     002A
    MDG_VMDKB_ADDR
                   0020
    MDGSIZE        0034 00000007

This information is based on z/VM V4R3.0. Last updated on 30 Apr 2002 at 16:56:23 EDT.
Copyright IBM Corporation, 1990, 2002