SUBBK | Back to Index page

| Prolog Control Block Contents SUBBK 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.

SUBBK Prolog | Top of page

     NAME       : HCPSUBBK
     DESCRIPTION: Subpool Data Area Block
     DSECT      : SUBBK
     FUNCTION   :
                  Maps each of the free storage subpool data area
                  elements.
     CREATED BY : Never allocated
     DELETED BY : Never deallocated
     RELOCATION CONSIDERATIONS : None
     NOTES      : This DSECT is used to map the free storage subpool
                  data structures. These structures are located in
                  HCPRSM for all types of free storage except virtual
                  free.  Virtual free storage SUBBKs are built in the
                  virtual free address space starting at X'800'.
                  Each data area group consists of multiple data
                  area elements.
                  The SUBBKs for all types of free storage except
                  for virtual free are a cache line in size. HCPPOOLS
                  and HCPRSM ensure cache alignment. This is to avoid
                  cache contention between different processors
                  allocating blocks from different subpools.
                  The SUBBKs for virtual free are not cache aligned.

SUBBK Control Block Content | Top of page

     SUBBK DSECT
    Top of page

    Hex   Dec Type/Val   Lng Label (dup)    Comments
    ---- ---- --------- ---- -------------- --------
    0000    0 Structure      SUBBK          Subpool Data Area Block
          Format 0 ("old style") SUBBK format used for subpools for
          the following types of subpooled free storage:
          - Virtual Free Storage (HCPVFM)
          - Host Logical Aligned Free Storage (HCPAFS)
          - Verifiable Free Storage (HCPVCB)
    0000    0 Signed       4 SUBLOCK        Subpool lock word
    0004    4 Signed       4 SUBSIZE        Integral size (in DWDS) of
                                            subpool block including FRERECL
    0008    8 Address      8 SUBANCHG       Pointer to 1st SXSTE for
                                            subpooled free storage.
    0010   16 Signed       4 SUBODWD        Count of DWD currently in use
                                            (multiple of SUBSIZE)
    0014   20 Signed       4 SUBCDWD        Count of DWDS now on chain
    0018   24 Signed       4 SUBUDWD        Count of actual DWD usage (does
                                            not include internal
                                            fragmentation)
    001C   28 Signed       4 SUBRCNT        Count of requests this size
    0020   32 Signed       4 *              Reserved for IBM use
    0024   36 Signed       4 *              Reserved for IBM use
    0028   40 Signed       4 *              Reserved for IBM use
    002C   44 Signed       4 *              Reserved for IBM use
    0030   48 Signed       4 *              Reserved for IBM use
    0034   52 Signed       4 *              Keep total length in whole
                                            numbers of dwords
              00000038       SUBVSZ         *-SUBBK Virtual free subbk size
    0038   56 Dbl-Word     8 * (25)         Reserved for IBM use.
              00000100       SUBESZ         *-SUBBK Size of one subpool entry
          Format 1 ("new/fast style") SUBBK format used for standard
          short term free storage, including "fast allocated" free
          storage control blocks.
    0000    0 Bitstring    1 SUBTSLK        Subpool lock byte
    0001    1 Bitstring    1 *              Reserved for IBM use
    0002    2 Signed       2 SUBBSIZE       Size in bytes (including
                                            header/trailer) of each block on
                                            this subpool
    0004    4 Signed       2 SUBMAXBS       Maximum number of blocks that fit
                                            in one page
    0006    6 Signed       2 *              Reserved for IBM use
          Notes      :  The following three fields (SUBFRETS, SUBBLOCK, and
                 SUBTOTRQ) must remain contiguous and in order, as
                 there is performance sensitive code in the free
                 storage allocation and deallocation paths which
                 references two adjacent fields (SUBBLOCK and SUBTOTRQ
                 for allocation, SUBFRETS and SUBBLOCK for
                 deallocation) with a single STM instruction
    0008    8 Signed       4 SUBFRETS       Total count of returns to this
                                            free storage subpool
    000C   12 Signed       4 SUBBLOCK       Anchor for blocks on this subpool
    0010   16 Signed       4 SUBTOTRQ       Total count of requests against
                                            this subpool
    0014   20 Signed       4 SUBCLCTP       Collection pile
    0018   24 Address      8 SUBMTFTEG      SXSTE address of 1st empty page
                                            on queue. FFS mark end of chain.
    0020   32 Signed       4 SUBXTNCT       Count of extends
    0024   36 Signed       4 SUBPAGCT       Count of pages on pool
    0028   40 Signed       4 SUBINUSE       Count of blocks in use on this
                                            subpool
    002C   44 Signed       4 SUBMTFCT       Count of pages on SUBMTFTE empty
                                            page queue for this subpool
    0030   48 Signed       4 SUBBLKCT       Total count of available blocks
                                            on SUBBLOCK queue + the SUBCLCTP
                                            (collection pile) queue. RAS
                                            count maintained only in debug
                                            mode. Combined count enables
                                            accuracy during HCPFRFDX
                                            processing which requeues the
                                            blocks.
    0034   52 Signed       4 SUBANYB2G      Count of <2G pages on this
                                            subpool obtained by the SXS page
                                            mgr as a result of an ANY
                                            request. Does not include
                                            disextend queue pages
    0038   56 Dbl-Word     8 * (25)         Reserved for IBM use.
              00000100       SUBNEXT        * Address of next SUBBK
              00000100       SUBSSZ         *-SUBBK Size of one standard
                                            short term free storage SUBBK
                                            entry
              00000002       SUBOFFSH       2 Number of bits to shift a
                                            subpool number to get the index
                                            into the HCPFRESO SUBBK offsets
                                            table for the subpool's SUBBK
          Format 2 SUBBK format used for real aligned free storage
    0000    0 Signed       4 SUB2LOCK       Subpool lock word
    0004    4 Signed       4 SUB2SIZE       Integral size (in DWDS) of
                                            subpool block including FRERECL
    0008    8 Address      8 SUB2ANCH       Pointer to 1st FRMTE for
                                            subpooled free storage.
    0010   16 Dbl-Word     8 SUB2ODWD       Count of DWD currently in use
                                            (multiple of SUBSIZE)
    0018   24 Dbl-Word     8 SUB2CDWD       Count of DWDS now on chain
    0020   32 Dbl-Word     8 SUB2UDWD       Count of actual DWD usage (does
                                            not include internal
                                            fragmentation)
    0028   40 Signed       4 SUB2RCNT       Count of requests this size
    002C   44 Signed       4 *              Reserved for IBM use
    0030   48 Signed       4 *              Reserved for IBM use
    0034   52 Signed       4 *              Keep total length in whole
                                            numbers of dwords
    0038   56 Dbl-Word     8 * (25)         Reserved for IBM use.
              00000100       SUBASZ         *-SUBBK Size of one subpool entry

SUBBK Storage Layout | Top of page

    *** SUBBK - Subpool Data Area Block
    *
    *     +---------------------------+---------------------------+
    *   0 |         SUBLOCK           |         SUBSIZE           |
    *     +---------------------------+---------------------------+
    *   8 |                       SUBANCHG                        |
    *     +---------------------------+---------------------------+
    *  10 |         SUBODWD           |         SUBCDWD           |
    *     +---------------------------+---------------------------+
    *  18 |         SUBUDWD           |         SUBRCNT           |
    *     +---------------------------+---------------------------+
    *  20 |///////////////////////////|///////////////////////////|
    *     +---------------------------+---------------------------+
    *  28 |///////////////////////////|///////////////////////////|
    *     +---------------------------+---------------------------+
    *  30 |///////////////////////////|///////////////////////////|
    *     +---------------------------+---------------------------+
    *  38 |///////////////////////////////////////////////////////|
    *     =///////////////////////////////////////////////////////=
    *     |///////////////////////////////////////////////////////|
    *     +-------------------------------------------------------+
    * 100
    *
    *** SUBBK - Subpool Data Area Block

    *** Overlay for SUBLOCK in SUBBK
    *
    *     +------+------+-------------+-------------+-------------+
    *   0 |:TSLK |//////|  SUBBSIZE   |  SUBMAXBS   |/////////////|
    *     +------+------+-------------+-------------+-------------+
    *   8 |         SUBFRETS          |         SUBBLOCK          |
    *     +---------------------------+---------------------------+
    *  10 |         SUBTOTRQ          |         SUBCLCTP          |
    *     +---------------------------+---------------------------+
    *  18 |                      SUBMTFTEG                        |
    *     +---------------------------+---------------------------+
    *  20 |         SUBXTNCT          |         SUBPAGCT          |
    *     +---------------------------+---------------------------+
    *  28 |         SUBINUSE          |         SUBMTFCT          |
    *     +---------------------------+---------------------------+
    *  30 |         SUBBLKCT          |        SUBANYB2G          |
    *     +---------------------------+---------------------------+
    *  38 |///////////////////////////////////////////////////////|
    *     =///////////////////////////////////////////////////////=
    *     |///////////////////////////////////////////////////////|
    *     +-------------------------------------------------------+
    * 100
    *
    *** Overlay for SUBLOCK in SUBBK

    *** Overlay for SUBLOCK in SUBBK
    *
    *     +---------------------------+---------------------------+
    *   0 |         SUB2LOCK          |         SUB2SIZE          |
    *     +---------------------------+---------------------------+
    *   8 |                       SUB2ANCH                        |
    *     +-------------------------------------------------------+
    *  10 |                       SUB2ODWD                        |
    *     +-------------------------------------------------------+
    *  18 |                       SUB2CDWD                        |
    *     +-------------------------------------------------------+
    *  20 |                       SUB2UDWD                        |
    *     +---------------------------+---------------------------+
    *  28 |         SUB2RCNT          |///////////////////////////|
    *     +---------------------------+---------------------------+
    *  30 |///////////////////////////|///////////////////////////|
    *     +---------------------------+---------------------------+
    *  38 |///////////////////////////////////////////////////////|
    *     =///////////////////////////////////////////////////////=
    *     |///////////////////////////////////////////////////////|
    *     +-------------------------------------------------------+
    * 100
    *
    *** Overlay for SUBLOCK in SUBBK

SUBBK Cross Reference | Top of page

    Symbol         Dspl Value
    -------------- ---- -----
    SUBANCHG       0008
    SUBANYB2G      0034
    SUBASZ         0038 00000100
    SUBBLKCT       0030
    SUBBLOCK       000C
    SUBBSIZE       0002
    SUBCDWD        0014
    SUBCLCTP       0014
    SUBESZ         0038 00000100
    SUBFRETS       0008
    SUBINUSE       0028
    SUBLOCK        0000
    SUBMAXBS       0004
    SUBMTFCT       002C
    SUBMTFTEG      0018
    SUBNEXT        0038 00000100
    SUBODWD        0010
    SUBOFFSH       0038 00000002
    SUBPAGCT       0024
    SUBRCNT        001C
    SUBSIZE        0004
    SUBSSZ         0038 00000100
    SUBTOTRQ       0010
    SUBTSLK        0000
    SUBUDWD        0018
    SUBVSZ         0034 00000038
    SUBXTNCT       0020
    SUB2ANCH       0008
    SUB2CDWD       0018
    SUB2LOCK       0000
    SUB2ODWD       0010
    SUB2RCNT       0028
    SUB2SIZE       0004
    SUB2UDWD       0020

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