Programming Interface Information: This information is NOT intended to be
used as Programming Interfaces of VM/ESA. It is to be used for diagnosis only.

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 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

(contains links to field and bit definitions)
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 VM/ESA 2.4.0.
Last updated on 3 Aug 1999 at 12:34:31 EDT.
Copyright IBM Corporation, 1990, 1999