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

SUBBK

Prolog  

Control Block Contents  
   SUBBK DSECT

Storage Layout  

Cross Reference (Contains links to field and bit definitions)  


SUBBK Prolog

 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
 Notes      : This DSECT is used to map the free storage subpool
              data area groups located in HCPRSM. Specifically,
              HCPRSMSS (regular free storage subpools) and
              HCPRSMVT (V=R free storage subpools).
              Each data area group consists of multiple data
              area elements.

 

SUBBK Control Block Content


SUBBK DSECT

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:
      - V=R free storage (HCPFRFV* entry points, HCPVRS)
      - Virtual Free Storage (HCPVFM)
      - 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      4 SUBANCH        Pointer to first FRMTE for
                                        subpooled free storage, or 1st
                                        available block for V=R
000C   12 Signed       4 SUBRCNT        Count of requests this size
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 *              Reserved for IBM use
0020   32 Signed       4 *              Reserved for IBM use
0024   36 Signed       4 *              Reserved for IBM use
          00000028       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 frame
0006    6 Signed       2 SUBMTFCT       Count of frames on SUBMTFTE empty
                                        frame queue for this subpool
                                        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 SUBMTFTE       FRMTE address of 1st empty frame
                                        on queue. FFS mark end of chain.
0018   24 Signed       4 SUBCLCTP       Collection pile
001C   28 Signed       4 SUBXTNCT       Count of extends
0020   32 Signed       4 SUBFRMCT       Count of frames on pool
0024   36 Signed       4 SUBINUSE       Count of blocks in use on this
                                        subpool
          00000028       SUBNEXT        * Address of next SUBBK
          00000028       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

 

SUBBK Storage Layout

          
*** SUBBK - Subpool Data Area Block
*
*     +---------------------------+---------------------------+
*   0 |         SUBLOCK           |         SUBSIZE           |
*     +---------------------------+---------------------------+
*   8 |         SUBANCH           |         SUBRCNT           |
*     +---------------------------+---------------------------+
*  10 |         SUBODWD           |         SUBCDWD           |
*     +---------------------------+---------------------------+
*  18 |         SUBUDWD           |///////////////////////////|
*     +---------------------------+---------------------------+
*  20 |///////////////////////////|///////////////////////////|
*     +---------------------------+---------------------------+
*  28
*
*** SUBBK - Subpool Data Area Block
          
*** Overlay for SUBLOCK in SUBBK
*
*     +------+------+-------------+-------------+-------------+
*   0 |:TSLK |//////|  SUBBSIZE   |  SUBMAXBS   |  SUBMTFCT   |
*     +------+------+-------------+-------------+-------------+
*   8 |         SUBFRETS          |         SUBBLOCK          |
*     +---------------------------+---------------------------+
*  10 |         SUBTOTRQ          |         SUBMTFTE          |
*     +---------------------------+---------------------------+
*  18 |         SUBCLCTP          |         SUBXTNCT          |
*     +---------------------------+---------------------------+
*  20 |         SUBFRMCT          |         SUBINUSE          |
*     +---------------------------+---------------------------+
*  28
*
*** Overlay for SUBLOCK in SUBBK

 

SUBBK Cross Reference

Symbol         Dspl Value
-------------- ---- -----
SUBANCH        0008
SUBBLOCK       000C
SUBBSIZE       0002
SUBCDWD        0014
SUBCLCTP       0018
SUBESZ         0024 00000028
SUBFRETS       0008
SUBFRMCT       0020
SUBINUSE       0024
SUBLOCK        0000
SUBMAXBS       0004
SUBMTFCT       0006
SUBMTFTE       0014
SUBNEXT        0024 00000028
SUBODWD        0010
SUBOFFSH       0024 00000002
SUBRCNT        000C
SUBSIZE        0004
SUBSSZ         0024 00000028
SUBTOTRQ       0010
SUBTSLK        0000
SUBUDWD        0018
SUBXTNCT       001C

This information is based on z/VM V5R1.0. Last updated on 8 Sep 2004 at 14:37:30 EDT.
Copyright IBM Corporation, 1990, 2004