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

#### CUIBK

Prolog

Control Block Contents
CUIBK DSECT

Storage Layout

Cross Reference (Contains links to field and bit definitions)

#### CUIBK Prolog

     NAME       : HCPCUIBK
     DESCRIPTION: CONTROL UNIT INFORMATION BLOCK
     DSECT      : CUIBK
     FUNCTION   : THE CONTROL UNIT INFORMATION BLOCK IS USED TO MANAGE
                  DASD CONTROL UNIT INFORMATION.
     LOCATED BY : THE LIST OF CUIBKS IS ANCHORED IN SYSCUIPT
                  CUINXTCU  FIELD OF CUIBK  - FORWARD CUIBK POINTER
                  RDEVCUI   FIELD OF RDEV   - POINTER TO CUIBK ASSOCIATED
                  WITH RDEV
     CREATED BY : CUIBK'S ARE CREATED DYNAMICALLY BY DEVICE INITIALIZATION
                  PROCESSING.
     DELETED BY : CUIBK's are deleted by HCPZDRDV during RDEV delete
                  processing and by HCPZRPPP during post-processing
                  for the RDEVICE statement or SET RDEVICE command.
     Serialized : Addition and Deletion of a CUIBK from the CUIBK chain
                  that hangs off SYSCUIPT in the System Common Area is
                  serialized by obtaining the SYSCUILK in exclusive
                  mode.  Code that runs the SYSCUIPT CUIBK chain in an
                  attempt to locate a specific CUIBK should obtain the
                  SYSCUILK in shared mode to ensure the integrity of
                  the chain.  Serialization of fields in the CUIBK not
                  related to the SYSCUIPT chain is handled either by
                  running on the Master Processor or as described in
                  the line comments below.

#### CUIBK Control Block Content

#### CUIBK DSECT

    Hex   Dec Type/Val   Lng Label (dup)    Comments
    ---- ---- --------- ---- -------------- --------
    0000    0 Structure      CUIBK          CONTROL UNIT INFORMATION BLOCK
    0000    0 Address      4 CUINXTCU       NEXT CUIBK IN CHAIN
    0004    4 Address      4 CUIRDEVS       POINTER TO LIST OF RDEVS
                                            ASSOCIATED WITH THIS CONTROL UNIT
    0008    8 Dbl-Word     8 * (0)
    0008    8 Bitstring   24 CUIAQLCK       SPIN LOCK FOR AEBK QUEUE
                                            (CUIAEBK)
    0020   32 Address      4 CUIAEBK        POINTER TO LIST OF AEBKS
                                            ASSOCIATED WITH THIS CONTROL UNIT
    0024   36 Signed       4 CUIDEDCT       NUMBER OF DEVICES ATTACHED TO
                                            THIS CONTROL UNIT WHICH ARE
                                            DEDICATED TO THE GUEST (OR WHICH
                                            HE HAS LINKED AS A FULL-PACK
                                            MINI) NOTES : THIS FIELD IS
                                            SERIALIZED BY MEANS COMPARE AND
                                            SWAP LOGIC. ALL REFERENCES TO
                                            FIELD MUST BE MADE USING COMPARE
                                            AND SWAP
    0028   40 Bitstring    1 CUIPOLL        FLAG FOR POLLING
              1... ....      CUIPOLL1       X'80' USED TO INDICATE WHETHER
                                            ALL AEBKS ON THIS CUIBK HAVE BEEN
                                            POLLED THIS TIME (USED AS A
                                            TOGGLE IN CONJUNCTION WITH
                                            CUIPOLL2)
              .1.. ....      CUIPOLL2       X'40' USED TO INDICATE WHETHER
                                            ALL AEBKS ON THIS CUIBK HAVE BEEN
                                            POLLED THIS TIME (USED AS A
                                            TOGGLE IN CONJUNCTION WITH
                                            CUIPOLL1)
    0029   41 Bitstring    1 CUISFLG        SPECIAL CONDITIONS FLAG
              .1.. ....      CUIQSMUC       X'40' Indicates that devices on
                                            this CU are quiesced for Summary
                                            UC recovery processing.
    002A   42 Bitstring   14 CUISSID        Subsystem ID for this control
                                            unit
    0038   56 Dbl-Word     8 * (0)
    0038   56 Bitstring   24 CUIDTLCK       SPIN LOCK FOR SUBSYSTEM STATUS
                                            DATA FIELDS (CUISSID, CUICFWID,
                                            AND CUISFLGS)
    0050   80 Signed       2 CUICFWID       CURRENT CACHE FASTWRITE ID FOR
                                            THIS SUBSYSTEM
    0052   82 Signed       2 CUIDVSC        DEVICE NUMBER OF THE DEVICE WHICH
                                            MOST RECENTLY CAUSED THE
                                            INVOCATION OF STATE-CHANGE-TYPE
                                            PROCESSING
    0054   84 Bitstring    1 CUISCAS        SUBSYSTEM CACHING STATUS FLAG
              1... ....      CUISSCA        X'80' CACHING IS ACTIVE
              .1.. ....      CUISCTM        X'40' CACHING TERMINATED
              ..1. ....      CUISSCD        X'20' CACHING IS DEACTIVATED
              ...1 ....      CUISCPOF       X'10' PENDING OFF FAILED
    0055   85 Bitstring    1 CUISDCCO       STORAGE DIRECTOR CACHING
                                            CONDITIONS FLAG
              1... ....      CUISSDM        X'80' SUBSYSTEM STORAGE DISABLED
                                            FOR MAINTENANCE
              .1.. ....      CUIIMLNA       X'40' IML DEVICE NOT AVAILABLE
              ..1. ....      CUICFWDA       X'20' CACHE FAST WRITE DATA
                                            ACTIVATED
              ...1 ....      CUICFWDD       X'10' CACHE FAST WRITE DATA
                                            DEACTIVATED
    0056   86 Bitstring    1 CUINVCAS       NON-VOLATILE CACHE STATUS FLAG
              1... ....      CUINVCA        X'80' NON-VOLATILE CACHE IS
                                            ACTIVATED
              .1.. ....      CUINVTM        X'40' NON-VOLATILE CACHE
                                            AVAILABILITY TERMINATED
              ..1. ....      CUINVCD        X'20' NON-VOLATILE CACHE
                                            DEACTIVATED
              ...1 ....      CUINVPOF       X'10' NON-VOLATILE CACHE PENDING
                                            OFF
    0057   87 Bitstring    1 CUINVSCO       NON-VOLATILE STORAGE CONDITIONS
                                            FLAG
              1... ....      CUINVDM        X'80' NON-VOLATILE STORAGE
                                            DISABLED FOR MAINTENANCE
              .1.. ....      CUINVPE        X'40' NON-VOLATILE STORAGE
                                            PENDING BECAUSE OF ERROR
              ..1. ....      CUINVOP        X'20' NON-VOLATILE STORAGE
                                            OPERATIONAL *** CONTROL UNIT ID &
                                            MODEL NUMBER
    0058   88 Bitstring    2 CUICUID        CONTROL UNIT ID IN PACKED DECIMAL
    005A   90 Bitstring    1 CUICUMN        CONTROL UNIT MODEL NUMBER THIS
                                            BYTE IS USED AS A PLACE HOLDER.
                                            WHEN A DEVICE GOES FRO BEING A
                                            SECONDARY TO SIMPLEX, THIS
                                            INFORMATION WILL BE USED IN THE
                                            SETTING OF RDEVDP AND RDEVFEAT
                                            INFORMATION.
    005B   91 Bitstring    1 CUIFEAT        FEATURE INFORMATION FOR DUPLEX
                                            PAIRS
              1... ....      CUIGRPD        X'80' PATHS ARE CURRENTLY GROUPED
              .... .1..      CUIRSRL        X'04' RESERVE/RELEASE IS
                                            SUPPORTED
              .... ..1.      CUIMPM         X'02' MULTIPATH MODE DP WAS
                                            ESTABLISHED
              .... ...1      CUISPM         X'01' MULITPATH MODE DP AS
                                            ESTABLISHED
    005C   92 Signed       4 CUILSBK        Pointer to library statistics
                                            block
    0060   96 Signed       4 CUILSLN        Length of library statistics
                                            block
    0064  100 Signed       2 CUILIMGR (0)   Status Bits
    0064  100 Bitstring    2 CUIOPRS        Referenced by HCPTAM
              0CUIOPRS       CUIAUTO        X'8000' Referenced by HCPTAM
              0CUIOPRS       CUIPAUS        X'4000' Referenced by HCPTAM
              0CUIOPRS       CUIMANM        X'2000' Referenced by HCPTAM
              0CUIOPRS       CUIDGOP        X'1000' Referenced by HCPTAM
              0CUIOPRS       CUISFTY        X'0800' Referenced by HCPTAM
              0CUIOPRS       CUIVSNO        X'0400' Vision System
                                            Non-Operational
              0CUIOPRS       CUIOFFL        X'0200' Referenced by HCPTAM
              0CUIOPRS       CUIINTR        X'0100' Intervention Required
              1... ....      CUILMC1        X'0080' Library Manager Check 1
                                            Condition
              .1.. ....      CUIASCF        X'0040' All Storage Cells Full
              ..1. ....      CUIOOCV        X'0020' Out of Cleaner Volumes
              ...1 ....      CUIDWDS        X'0010' Dual Write Disabled
              .... 1...      CUIENVA        X'0008' Environmental Alert
              .... .1..      CUIIRFM        X'0004' Insufficient Resources
                                            for Mounts
              .... ..1.      CUILMSW        X'0002' Library Manager
                                            Switchover In Progress
              .... ...1      CUIVOES        X'0001' VTS Out of Empty Stacked
                                            Volumes
    0066  102 Signed       2 CUIPMIH        Primary MIH time-out value
    0068  104 Address      4 CUISUCIO       Summary UC recovery IORBK address
    006C  108 Bitstring    1 CUILEVEL       FORMAT OF SENSE SUBSYSTEM STATUS
              1... ....      CUISCNVS       X'80' FORMAT 0 OF SENSE SUBSYSTEM
                                            STATUS
              .1.. ....      CUIDCNVS       X'40' FORMAT 1 OF SENSE SUBSYSTEM
                                            STATUS
    006D  109 Bitstring    1 CUISSFG        Subsystem Flag
              1... ....      CUISNSS        X'80' Control unit supports Sense
                                            Subsystem Status CCW
    006E  110 Bitstring    1 CUIGLBST       SUBSYSTEM STATUS(CACHE&DASD)
                                            fastwrite
              1... ....      CUISFWRE       X'80' FAST WRITE (CACHE AND DASD)
                                            RESUMED
              .1.. ....      CUISFWSU       X'40' FAST WRITE (CACHE AND DASD)
                                            SUSPENDED
    006F  111 Bitstring    1 CUILSACP       LSA Capacity operating level
              00000000       CUILSAHA       X'00' Home Area subsystem
              00000001       CUILSANM       X'01' Normal: LSA subsystem is
                                            not capacity strained
              00000003       CUILSAST       X'03' Stressed: LSA subsystem is
                                            running beyond recommended
                                            capacity
              00000005       CUILSACR       X'05' Critical: LSA subsystem is
                                            almost out of space
              00000007       CUILSAEM       X'07' Emergency: LSA subsystem is
                                            totally full
    0070  112 Signed       2 CUISMIH        Secondary MIH time-out value
    0072  114 Bitstring    2 CUIEOPR        Library Extended Operational
                                            State
              0CUIEOPR       CUICODS        X'8000' Copy Operations Disabled
              0CUIEOPR       CUIVOPD        X'4000' VTS Operations Degraded
              0CUIEOPR       CUIIMCC        X'2000' Immed Mode Copy
                                            Completion's Deferred
              0CUIEOPR       CUISERP        X'1000' Service Preparation
    0074  116 Address      4 CUITOKND       Pointer to CDT structure (Token
                                            NED)
    0078  120 Address      4 CUIGRSBK       Pointer to list of guest response
                                            summaries
    007C  124 Signed       4 CUISUCNT       Summary UC recovery counter
    0080  128 Dbl-Word     8 * (0)          Doubleword aligned
    0080  128 Bitstring   24 CUICDTLK       Deferlock for CDT structure
                                            pointed to by CUITOKND
    0098  152 Address      4 CUICUIRQ       Pointer to first CUIR message
                                            task
    009C  156 Address      4 CUICUILT       Pointer to last CUIR message task
    00A0  160 Dbl-Word     8 * (0)          Doubleword aligned
    00A0  160 Bitstring   24 CUIGQLCK       Spin lock for Guest response
                                            summaries
    00B8  184 Bitstring    4 CUICUIFG       Flaf for CUIR message task
    00BC  188 Bitstring   14 CUITTID        Tape token NED id
    00CA  202 Bitstring   14 CUITLID        Tape library NED id
    00D8  216 Address      4 CUIARSV        Pointer to Diagnose X'254' pseudo
                                            VDEV if it exists. Serialized by
                                            ARSLOCKW in the HCPIOD25 data
                                            area.
    00DC  220 Bitstring    1 CUIFLAGS       Miscellaneous CUI flags
              .... ...1      CUISETCH       X'01' IDT has already done Set
                                            Sys Char CCW
    00DD  221 Bitstring    1 CUIMCLIC       Microcode LIC Features
              1... ....      CUISKFV2       X'80' Shark FlashCopy Version 2
              .1.. ....      CUISKFVL       X'40' Shark Full Volume
              ..1. ....      CUISKTAR       X'20' Shark PPRC Target
           The CUISUMUC byte serializes summary uc recovery such that
           the recovery action for all of the devices on the control
           unit only occurs once for each unique failover condition.
           Multiple summary unit checks could occur for one failover
           condition if recovery does not finish within the CU's MIH
           window.  We do not want to do recovery multiple times.
    00DE  222 Bitstring    1 CUISUMUC       Summary UC recovery in progress
                                            flag
    00DF  223 Bitstring    1 *              Reserved for future IBM use
    00E0  224 Dbl-Word     8 CUIBKEND (0)   END OF CUIBK
              0000001C       CUISIZE        (*-CUIBK+7)/8 SIZE OF CUIBK
    002A   42 Bitstring   14 CUITSSID       Tape Subsystem ID
    002A   42 Bitstring    2 CUIDSSID       DASD Subsystem ID

#### CUIBK Storage Layout

    *** CUIBK - CONTROL UNIT INFORMATION BLOCK
    *
    *     +---------------------------+---------------------------+
    *   0 |         CUINXTCU          |         CUIRDEVS          |
    *     +---------------------------+---------------------------+
    *   8 |                                                       |
    *     =                       CUIAQLCK                        =
    *     |                                                       |
    *     +---------------------------+---------------------------+
    *  20 |         CUIAEBK           |         CUIDEDCT          |
    *     +------+------+-------------+---------------------------+
    *  28 |:POLL |:SFLG |                CUISSID                  |
    *     +------+------+                                         |
    *     |                                                       |
    *     +-------------------------------------------------------+
    *  38 |                                                       |
    *     =                       CUIDTLCK                        =
    *     |                                                       |
    *     +-------------+-------------+------+------+------+------+
    *  50 |  CUICFWID   |  CUIDVSC    |:SCAS |:SDCCO|:NVCAS|:NVSCO|
    *     +-------------+------+------+------+------+------+------+
    *  58 |  CUICUID    |:CUMN |:FEAT |         CUILSBK           |
    *     +-------------+------+------+-------------+-------------+
    *  60 |         CUILSLN           |  CUIOPRS    |  CUIPMIH    |
    *     +---------------------------+------+------+------+------+
    *  68 |         CUISUCIO          |:LEVEL|:SSFG |:GLBST|:LSACP|
    *     +-------------+-------------+------+------+------+------+
    *  70 |  CUISMIH    |  CUIEOPR    |         CUITOKND          |
    *     +-------------+-------------+---------------------------+
    *  78 |         CUIGRSBK          |         CUISUCNT          |
    *     +---------------------------+---------------------------+
    *  80 |                                                       |
    *     =                       CUICDTLK                        =
    *     |                                                       |
    *     +---------------------------+---------------------------+
    *  98 |         CUICUIRQ          |         CUICUILT          |
    *     +---------------------------+---------------------------+
    *  A0 |                                                       |
    *     =                       CUIGQLCK                        =
    *     |                                                       |
    *     +---------------------------+---------------------------+
    *  B8 |         CUICUIFG          |                           |
    *     +---------------------------+                           |
    *     |                       CUITTID                         |
    *     |             +-----------------------------------------+
    *  C8 |             |                CUITLID                  |
    *     +-------------+                                         |
    *     |                                                       |
    *     +---------------------------+------+------+------+------+
    *  D8 |         CUIARSV           |:FLAGS|:MCLIC|:SUMUC|//////|
    *     +---------------------------+------+------+------+------+
    *
    *** CUIBK - CONTROL UNIT INFORMATION BLOCK

    *** Overlay for CUISSID in CUIBK
    *
    *                   +-----------------------------------------+
    *  28 ...        2A |                CUITSSID                 |
    *     +-------------+                                         |
    *     |                                                       |
    *     +-------------------------------------------------------+
    *  38
    *
    *** Overlay for CUISSID in CUIBK

    *** Overlay for CUISSID in CUIBK
    *
    *                   +-------------+
    *  28 ...        2A |  CUIDSSID   | 2C
    *                   +-------------+
    *
    *** Overlay for CUISSID in CUIBK

#### CUIBK Cross Reference

    Symbol         Dspl Value
    -------------- ---- -----
    CUIAEBK        0020
    CUIAQLCK       0008
    CUIARSV        00D8
    CUIASCF        0064 40
    CUIAUTO        0064 0CUIOPRS
    CUIBKEND       00E0
    CUICDTLK       0080
    CUICFWDA       0055 20
    CUICFWDD       0055 10
    CUICFWID       0050
    CUICODS        0072 0CUIEOPR
    CUICUID        0058
    CUICUIFG       00B8
    CUICUILT       009C
    CUICUIRQ       0098
    CUICUMN        005A
    CUIDCNVS       006C 40
    CUIDEDCT       0024
    CUIDGOP        0064 0CUIOPRS
    CUIDSSID       002A
    CUIDTLCK       0038
    CUIDVSC        0052
    CUIDWDS        0064 10
    CUIENVA        0064 08
    CUIEOPR        0072
    CUIFEAT        005B
    CUIFLAGS       00DC
    CUIGLBST       006E
    CUIGQLCK       00A0
    CUIGRPD        005B 80
    CUIGRSBK       0078
    CUIIMCC        0072 0CUIEOPR
    CUIIMLNA       0055 40
    CUIINTR        0064 0CUIOPRS
    CUIIRFM        0064 04
    CUILEVEL       006C
    CUILIMGR       0064
    CUILMC1        0064 80
    CUILMSW        0064 02
    CUILSACP       006F
    CUILSACR       006F 00000005
    CUILSAEM       006F 00000007
    CUILSAHA       006F 00000000
    CUILSANM       006F 00000001
    CUILSAST       006F 00000003
    CUILSBK        005C
    CUILSLN        0060
    CUIMANM        0064 0CUIOPRS
    CUIMCLIC       00DD
    CUIMPM         005B 02
    CUINVCA        0056 80
    CUINVCAS       0056
    CUINVCD        0056 20
    CUINVDM        0057 80
    CUINVOP        0057 20
    CUINVPE        0057 40
    CUINVPOF       0056 10
    CUINVSCO       0057
    CUINVTM        0056 40
    CUINXTCU       0000
    CUIOFFL        0064 0CUIOPRS
    CUIOOCV        0064 20
    CUIOPRS        0064
    CUIPAUS        0064 0CUIOPRS
    CUIPMIH        0066
    CUIPOLL        0028
    CUIPOLL1       0028 80
    CUIPOLL2       0028 40
    CUIQSMUC       0029 40
    CUIRDEVS       0004
    CUIRSRL        005B 04
    CUISCAS        0054
    CUISCNVS       006C 80
    CUISCPOF       0054 10
    CUISCTM        0054 40
    CUISDCCO       0055
    CUISERP        0072 0CUIEOPR
    CUISETCH       00DC 01
    CUISFLG        0029
    CUISFTY        0064 0CUIOPRS
    CUISFWRE       006E 80
    CUISFWSU       006E 40
    CUISIZE        00E0 0000001C
    CUISKFVL       00DD 40
    CUISKFV2       00DD 80
    CUISKTAR       00DD 20
    CUISMIH        0070
    CUISNSS        006D 80
    CUISPM         005B 01
    CUISSCA        0054 80
    CUISSCD        0054 20
    CUISSDM        0055 80
    CUISSFG        006D
    CUISSID        002A
    CUISUCIO       0068
    CUISUCNT       007C
    CUISUMUC       00DE
    CUITLID        00CA
    CUITOKND       0074
    CUITSSID       002A
    CUITTID        00BC
    CUIVOES        0064 01
    CUIVOPD        0072 0CUIEOPR
    CUIVSNO        0064 0CUIOPRS

This information is based on z/VM V5R2.0. Last updated on 12 Apr 2006 at 16:47:15 EDT.
Copyright IBM Corporation, 1990, 2005