MBBK | Back to Index page

| Prolog Control Block Contents MBBK DSECT Storage Layout Cross Reference (Contains links to field and bit definitions) |
Programming Interface Information: This information is NOT intended to be used as Programming Interfaces of z/VM.

MBBK Prolog | Top of page

     NAME       : HCPMBBK
     DESCRIPTION: Managed Buffers Set Block
     DSECT      : MBBK
     FUNCTION   : A Managed Buffer Set Block will contain information
                  about the buffers managed by module HCPMBS.
     LOCATED BY : MBBKs are chained in a circular double linked list.
                  The start of the linked list is anchored at
                  RSAFMBBK.  The forward pointer of the last block
                  points to the block at RSAFMBBK.  The backward
                  pointer of the block at RSAFMBBK points to the last
                  block.  If there are no blocks in the list, RSAFMBBK
                  contains 0.
     CREATED BY : A Managed Buffer Block is allocated by
                  HCPMBSIN in HCPMBS. This occurs during the
                  Managed Buffer Set initialization.
     DELETED BY : A Managed Buffer Block is deleted by HCPMBSCL
                  in HCPMBS. This occurs when the Managed
                  Buffer Set is being closed.
                  It can also be deleted by HCPMBS1R/RM and
                  HCPMBSCB when the Managed Buffer Set Block
                  was closed before the call to these entry
                  points.
     REFERENCES : See HCPMBS for information about the usage of
                  this block.
     SERIALIZED : MBBNEXT and MBBPREV are serialized by
                  RSAMBSLK in HCPMBS. The rest of the fields
                  are serialized by MBBLK. Both of these
                  locks are acquired by the TS instruction.
     RELOCATION CONSIDERATIONS : None
     NOTES      : None

MBBK Control Block Content | Top of page

     MBBK DSECT
    Top of page

    Hex   Dec Type/Val   Lng Label (dup)    Comments
    ---- ---- --------- ---- -------------- --------
    0000    0 Structure      MBBK           Managed Buffers Set Block
    0000    0 Address      4 MBBNEXT        Next MBBK
    0004    4 Address      4 MBBPREV        Previous MBBK
    0008    8 Bitstring    1 MBBLK          Managed Buffer Set Block Lock
    0009    9 Bitstring    1 MBBSTATE       Managed Buffer Set State
              1... ....      MBBCLOSE       X'80' MBBCLOSE Indicates that
                                            this Managed Buffer Set is
                                            closed.
    000A   10 Bitstring    1 MBBCALLR       MBBK GB/GM caller codes
              .... ...1      MBBGB          1 MBBGB Caller of HCPMBSGB
              .... ..1.      MBBGM          2 MBBGM Caller of HCPMBSGM
    000B   11 Bitstring    1 *              Reserved for IBM use
    000C   12 Signed       4 MBBMAX         Maximum number of buffers that
                                            can be allocated by this managed
                                            buffer set.
    0010   16 Signed       4 MBBRQMAX       Requested max, passed in to
                                            HCPMBSIN
    0014   20 Signed       4 MBBCOUT        Count of Buffers currently
                                            allocated
    0018   24 Signed       4 MBBPCOUT       Count of Pending Out buffers...
                                            requested, not yet allocated
          A waiting queue will be maintained for processes that
          requested a buffer while all the buffers were out and the
          number of allocated buffers has reached the maximum
          permitted.
          Notes      : The waiting queue is only used when MBBCALLR=MBBGB.
    001C   28 Address      4 MBBWQHD        Requesters Waiting Queue Head
    0020   32 Address      4 MBBWQTL        Requesters Waiting Queue Tail
    0024   36 Signed       4 * (4)          Reserved for future use
          The following counters are useful for debugging.
    0034   52 Signed       4 MBBMXOUT       Maximum achieved value of out
                                            buffers
    0038   56 Signed       4 MBBNBPMX       No-buffer-provided max count
                                            Keeps track of how many times MBS
                                            could not provide a buffer (MBSGB
                                            or MBSGM caller) due to max
                                            reached
    003C   60 Signed       4 MBBDEFER       Cumulative count of requests
                                            (MBSGB or MBSGM requests) that
                                            were told to defer Notes :
                                            MBBTOTAL = MBBRBREQ + MBBCBREQ +
                                            MBBCOUT
    0040   64 Signed       4 MBBTOTAL       Total number of buffers allocated
    0044   68 Signed       4 MBBRBREQ       Cumulative count of buffers
                                            returned
    0048   72 Signed       4 MBBCBREQ       Cumulative count of consumed
                                            buffers
              0000000A       MBBSIZE        (*-MBBK+7)/8 size in double words
              00000050       MBBBSIZE       MBBSIZE*8 size in bytes

MBBK Storage Layout | Top of page

    *** MBBK - Managed Buffers Set Block
    *
    *     +---------------------------+---------------------------+
    *   0 |         MBBNEXT           |         MBBPREV           |
    *     +------+------+------+------+---------------------------+
    *   8 |MBBLK |:STATE|:CALLR|//////|          MBBMAX           |
    *     +------+------+------+------+---------------------------+
    *  10 |         MBBRQMAX          |         MBBCOUT           |
    *     +---------------------------+---------------------------+
    *  18 |         MBBPCOUT          |         MBBWQHD           |
    *     +---------------------------+---------------------------+
    *  20 |         MBBWQTL           |///////////////////////////|
    *     +---------------------------+///////////////////////////|
    *     |///////////////////////////////////////////////////////|
    *     |///////////////////////////+---------------------------+
    *  30 |///////////////////////////|         MBBMXOUT          |
    *     +---------------------------+---------------------------+
    *  38 |         MBBNBPMX          |         MBBDEFER          |
    *     +---------------------------+---------------------------+
    *  40 |         MBBTOTAL          |         MBBRBREQ          |
    *     +---------------------------+---------------------------+
    *  48 |         MBBCBREQ          | 4C
    *     +---------------------------+
    *
    *** MBBK - Managed Buffers Set Block

MBBK Cross Reference | Top of page

    Symbol         Dspl Value
    -------------- ---- -----
    MBBBSIZE       0048 00000050
    MBBCALLR       000A
    MBBCBREQ       0048
    MBBCLOSE       0009 80
    MBBCOUT        0014
    MBBDEFER       003C
    MBBGB          000A 01
    MBBGM          000A 02
    MBBLK          0008
    MBBMAX         000C
    MBBMXOUT       0034
    MBBNBPMX       0038
    MBBNEXT        0000
    MBBPCOUT       0018
    MBBPREV        0004
    MBBRBREQ       0044
    MBBRQMAX       0010
    MBBSIZE        0048 0000000A
    MBBSTATE       0009
    MBBTOTAL       0040
    MBBWQHD        001C
    MBBWQTL        0020

This information is based on z/VM 7.2.0 Last updated on 24 Jun 2020 at 09:29:04 EDT.
Copyright IBM Corporation, 1990, 2020