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

SPIBK

Prolog  

Control Block Contents  
   SPIBK DSECT

Storage Layout  

Cross Reference (Contains links to field and bit definitions)  


SPIBK Prolog

 NAME       : HCPSPIBK
 DESCRIPTION: Space Permission Information BlocK
 DSECT      : SPIBK
 FUNCTION   : Defines one address space's permission to
              attach another address space to its access
              list.
 LOCATED BY : ASCSPIBK  Pointer to chain of SPIBKs designating
              which users are permitted to attach this
              space to their guest-use access list.
              ALCSPIBK  Anchor for chain of SPIBKs defining
              which address spaces may be attached to
              this guest-use access list.
 CREATED BY : HCPSPM - When the first permission for an access
              list to access an address space is granted.
 DELETED BY : HCPSPM - When the last permission for an access
              list to access an address space is revoked.
 SERIALIZED : All fields in this control block, as well
              as the ASCSPIBK and ALCSPIBK fields in
              the ASCBK and the ALCBK are serialized
              by the Space-Permission-Manager lock,
              RSASPMLK in HCPRSM.
 COMMENTS   : The allocation default for this control block
              is 'VIRTUAL'. If the default is not overridden,
              this control block comes from and is returned
              to the virtual free storage CP utility address
              space. Access register mode must be entered
              in order to use this storage. The ALET for the
              virtual free storage CP utility address space
              resides in HCPSYSCM. If the TYPE= parameter is
              overridden on the HCPGETST macro from virtual
              to some other type (all other types are real)
              or vice versa, the HCPRELST TYPE= parameter
              MUST also be overridden.
              Both the address space permission chain and
              the access list permission chain are
              doubly-linked. In both cases, the forward
              pointer of the last element of the chain
              is zero. However, the backward pointer
              of the first element in the chain is also
              zero, instead of pointing back to the ASCBK
              or ALCBK anchor field. Since the ASCBKs and
              ALCBKs are in real storage, their addresses
              are real addresses and there would need to be
              some way to determine when the anchor address
              was reached in order to properly handle it.
              To avoid dealing with that problem (since it's
              not really critical that we take that last step
              backward), we simply zero the backward pointer
              of the first chain element.

 

SPIBK Control Block Content


SPIBK DSECT

Hex   Dec Type/Val   Lng Label (dup)    Comments
---- ---- --------- ---- -------------- --------
0000    0 Structure      SPIBK          Space Permission Information
                                        BlocK
0000    0 Address      4 SPISPFOR       Space forward pointer to next
                                        SPIBK in chain defining what
                                        spaces are permitted to attach
                                        this space to their guest-use
                                        access list. Chain starts in an
                                        ASCBK.
0004    4 Address      4 SPISPBAC       Backward pointer to a previous
                                        SPIBK on an ASCBK's chain.
0008    8 Address      4 SPIALFOR       Access List forward pointer to
                                        next SPIBK in chain defining what
                                        spaces may be attached to this
                                        guest-use access list. Chain
                                        starts in ALCBK.
000C   12 Address      4 SPIALBAC       Backward pointer to previous
                                        SPIBK on an ALCBK's chain.
     The following two fields are static while the SPIBK is chained
0010   16 Address      4 SPIALCBK       The address of the ALCBK defining
                                        the access list which is
                                        permitted to attach the address
                                        space described by SPIASCBK.
0014   20 Address      4 SPIASCBK       The address of the ASCBK defining
                                        the address space which may be
                                        attached to the the access list
                                        described by SPIALCBK.
0018   24 Bitstring    1 SPIPERM        Permission flags
          1... ....      SPMDEBUG       X'80' Debug-type access is
                                        requested or permitted.
          .1.. ....      SPMPRGRW       X'40' Program-type read-write
                                        access is requested or permitted.
          ..1. ....      SPMPRGRO       X'20' Program-type read-only
                                        access is requested or permitted.
          ...1 ....      SPMPRGRD       X'10' Program-type read access is
                                        requested or permitted.
0019   25 Bitstring    1 * (3)          Reserved for future IBM use
001C   28 Signed       4 *              Reserved for future IBM use
          00000004       SPISIZE        (*-SPIBK+7)/8 Length of SPIBK in
                                        DWs

 

SPIBK Storage Layout

          
*** SPIBK - Space Permission Information BlocK
*
*     +---------------------------+---------------------------+
*   0 |         SPISPFOR          |         SPISPBAC          |
*     +---------------------------+---------------------------+
*   8 |         SPIALFOR          |         SPIALBAC          |
*     +---------------------------+---------------------------+
*  10 |         SPIALCBK          |         SPIASCBK          |
*     +------+--------------------+---------------------------+
*  18 |:PERM |////////////////////|///////////////////////////|
*     +------+--------------------+---------------------------+
*  20
*
*** SPIBK - Space Permission Information BlocK

 

SPIBK Cross Reference

Symbol         Dspl Value
-------------- ---- -----
SPIALBAC       000C
SPIALCBK       0010
SPIALFOR       0008
SPIASCBK       0014
SPIPERM        0018
SPISIZE        001C 00000004
SPISPBAC       0004
SPISPFOR       0000
SPMDEBUG       0018 80
SPMPRGRD       0018 10
SPMPRGRO       0018 20
SPMPRGRW       0018 40

This information is based on z/VM V4R2.0. Last updated on 17 Oct 2001 at 16:34:13 EDT.
Copyright IBM Corporation, 1990, 2001