Programming Interface Information:
This information is NOT intended to be used as Programming Interfaces of z/VM. |
CUIBK
Control Block Contents
CUIBK DSECT
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 48 CUIAQLCK Spin Lock for AEBK queue(CUIAEBK) 0038 56 Address 4 CUIAEBK POINTER TO LIST OF AEBKS ASSOCIATED WITH THIS CONTROL UNIT 003C 60 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 0040 64 Bitstring 1 CUIPOLL FLAG FOR POLLING 1... .... CUIPOLL1 X'80' CUIPOLL1 USED TO INDICATE WHETHER ALL AEBKS ON THI CUIBK HAVE BEEN POLLED THIS TIME (USED AS A TOGGLE IN CONJUNCTION WITH CUIPOLL2) .1.. .... CUIPOLL2 X'40' CUIPOLL2 USED TO INDICATE WHETHER ALL AEBKS ON THI CUIBK HAVE BEEN POLLED THIS TIME (USED AS A TOGGLE IN CONJUNCTION WITH CUIPOLL1) 0041 65 Bitstring 1 CUISFLG SPECIAL CONDITIONS FLAG .1.. .... CUIQSMUC X'40' CUIQSMUC Indicates that devices on this CU are quiesced for Summary UC recovery processing. 0042 66 Bitstring 14 CUISSID Subsystem ID for this control unit 0050 80 Dbl-Word 8 * (0) 0050 80 Bitstring 48 CUIDTLCK Spin lock for subsys status data fields (CUISSID, CUICFWID, AND CUISFLGS) 0080 128 Signed 2 CUICFWID CURRENT CACHE FASTWRITE ID FOR THIS SUBSYSTEM 0082 130 Signed 2 CUIDVSC DEVICE NUMBER OF THE DEVICE WHICH MOST RECENTLY CAUSED THE INVOCATION OF STATE-CHANGE-TYPE PROCESSING 0084 132 Bitstring 1 CUISCAS SUBSYSTEM CACHING STATUS FLAG 1... .... CUISSCA X'80' CUISSCA CACHING IS ACTIVE .1.. .... CUISCTM X'40' CUISCTM CACHING TERMINATED ..1. .... CUISSCD X'20' CUISSCD CACHING IS DEACTIVATED ...1 .... CUISCPOF X'10' CUISCPOF PENDING OFF FAILED 0085 133 Bitstring 1 CUISDCCO STORAGE DIRECTOR CACHING CONDITIONS FLAG 1... .... CUISSDM X'80' CUISSDM SUBSYSTEM STORAGE DISABLED FOR MAINTENANCE .1.. .... CUIIMLNA X'40' CUIIMLNA IML DEVICE NOT AVAILABLE ..1. .... CUICFWDA X'20' CUICFWDA CACHE FAST WRITE DATA ACTIVATED ...1 .... CUICFWDD X'10' CUICFWDD CACHE FAST WRITE DATA DEACTIVATED 0086 134 Bitstring 1 CUINVCAS NON-VOLATILE CACHE STATUS FLAG 1... .... CUINVCA X'80' CUINVCA NON-VOLATILE CACHE IS ACTIVATED .1.. .... CUINVTM X'40' CUINVTM NON-VOLATILE CACHE AVAILABILITY TERMINATED ..1. .... CUINVCD X'20' CUINVCD NON-VOLATILE CACHE DEACTIVATED ...1 .... CUINVPOF X'10' CUINVPOF NON-VOLATILE CACHE PENDING OFF 0087 135 Bitstring 1 CUINVSCO NON-VOLATILE STORAGE CONDITIONS FLAG 1... .... CUINVDM X'80' CUINVDM NON-VOLATILE STORAGE DISABLED FOR MAINTENA .1.. .... CUINVPE X'40' CUINVPE NON-VOLATILE STORAGE PENDING BECAUSE OF ER ..1. .... CUINVOP X'20' CUINVOP NON-VOLATILE STORAGE OPERATIONAL *** CONTROL UNIT ID & MODEL NUMBER 0088 136 Bitstring 2 CUICUID CONTROL UNIT ID IN PACKED DECIMAL 008A 138 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. 008B 139 Bitstring 1 CUIFEAT FEATURE INFORMATION FOR DUPLEX PAIRS 1... .... CUIGRPD X'80' CUIGRPD PATHS ARE CURRENTLY GROUPED .... .1.. CUIRSRL X'04' CUIRSRL RESERVE/RELEASE IS SUPPORTED .... ..1. CUIMPM X'02' CUIMPM MULTIPATH MODE DP WAS ESTABLISHED .... ...1 CUISPM X'01' CUISPM MULITPATH MODE DP AS ESTABLISHED 008C 140 Signed 4 CUILSBK Pointer to library statistics block 0090 144 Signed 4 CUILSLN Length of library statistics block 0094 148 Signed 2 CUILIMGR (0) Status Bits 0094 148 Bitstring 2 CUIOPRS Referenced by HCPTAM 00008000 CUIAUTO X'8000' CUIAUTO Referenced by HCPTAM 00004000 CUIPAUS X'4000' CUIPAUS Referenced by HCPTAM 00002000 CUIMANM X'2000' CUIMANM Referenced by HCPTAM 00001000 CUIDGOP X'1000' CUIDGOP Referenced by HCPTAM 00000800 CUISFTY X'0800' CUISFTY Referenced by HCPTAM 00000400 CUIVSNO X'0400' CUIVSNO Vision System Non-Operational 00000200 CUIOFFL X'0200' CUIOFFL Referenced by HCPTAM 00000100 CUIINTR X'0100' CUIINTR Intervention Required 00000080 CUILMC1 X'0080' CUILMC1 Library Manager Check 1 Condition 00000040 CUIASCF X'0040' CUIASCF All Storage Cells Full 00000020 CUIOOCV X'0020' CUIOOCV Out of Cleaner Volumes 00000010 CUIDWDS X'0010' CUIDWDS Dual Write Disabled 00000008 CUIENVA X'0008' CUIENVA Environmental Alert 00000004 CUIIRFM X'0004' CUIIRFM Insufficient Resources for Mounts 00000002 CUILMSW X'0002' CUILMSW Library Manager Switchover In Progress 00000001 CUIVOES X'0001' CUIVOES VTS Out of Empty Stacked Volumes 0096 150 Signed 2 CUIPMIH Primary MIH time-out value 0098 152 Address 4 CUISUCIO Summary UC recovery IORBK address 009C 156 Bitstring 1 CUILEVEL FORMAT OF SENSE SUBSYSTEM STATUS 1... .... CUISCNVS X'80' CUISCNVS FORMAT 0 OF SENSE SUBSYSTEM STATUS .1.. .... CUIDCNVS X'40' CUIDCNVS FORMAT 1 OF SENSE SUBSYSTEM STATUS 009D 157 Bitstring 1 CUISSFG Subsystem Flag 1... .... CUISNSS X'80' CUISNSS Control unit supports Sense Subsystem Status CCW 009E 158 Bitstring 1 CUIGLBST SUBSYSTEM STATUS(CACHE&DASD) fastwrite 1... .... CUISFWRE X'80' CUISFWRE FAST WRITE (CACHE AND DASD) RESUMED .1.. .... CUISFWSU X'40' CUISFWSU FAST WRITE (CACHE AND DASD) SUSPENDED 009F 159 Bitstring 1 CUILSACP LSA Capacity operating level 00000000 CUILSAHA X'00' CUILSAHA Home Area subsystem 00000001 CUILSANM X'01' CUILSANM Normal: LSA subsystem is not capacity strained 00000003 CUILSAST X'03' CUILSAST Stressed: LSA subsystem is running beyond recommended capacity 00000005 CUILSACR X'05' CUILSACR Critical: LSA subsystem is almost out of space 00000007 CUILSAEM X'07' CUILSAEM Emergency: LSA subsystem is totally full 00A0 160 Signed 2 CUISMIH Secondary MIH time-out value 00A2 162 Bitstring 2 CUIEOPR Library Extended Operational State 00008000 CUICODS X'8000' CUICODS Copy Operations Disabled 00004000 CUIVOPD X'4000' CUIVOPD VTS Operations Degraded 00002000 CUIIMCC X'2000' CUIIMCC Immed Mode Copy Completion's Deferred 00001000 CUISERP X'1000' CUISERP Service Preparation 00A4 164 Address 4 CUITOKND Pointer to CDT structure (Token NED) 00A8 168 Address 4 CUIGRSBK Pointer to list of guest response summaries 00AC 172 Signed 4 CUISUCNT Summary UC recovery counter 00B0 176 Dbl-Word 8 * (0) Doubleword aligned 00B0 176 Bitstring 24 CUICDTLK Deferlock for CDT structure pointed to by CUITOKND 00C8 200 Address 4 CUICUIRQ Pointer to first CUIR message task 00CC 204 Address 4 CUICUILT Pointer to last CUIR message task 00D0 208 Dbl-Word 8 * (0) Doubleword aligned 00D0 208 Bitstring 48 CUIGQLCK Spin lock for guest response... summaries 0100 256 Bitstring 4 CUICUIFG Flaf for CUIR message task 0104 260 Bitstring 14 CUITTID Tape token NED id 0112 274 Bitstring 14 CUITLID Tape library NED id 0120 288 Address 4 CUIARSV Pointer to Diagnose X'254' pseudo VDEV if it exists. Serialized by ARSLOCKW in the HCPIOD25 data area. 0124 292 Bitstring 1 CUIFLAGS Miscellaneous CUI flags 1... .... CUISHARK X'80' CUISHARK CU is a SHARK CU .1.. .... CUIFICON X'40' CUIFICON CU CHPIDs are all FICON ..1. .... CUINUMVL X'20' CUINUMVL CU Number in CUINUM is valid ...1 .... CUICPALW X'10' CUICPALW CP determined the allowed PAV setting .... 1... CUIHPALS X'08' CUIHPALS HyperPAV Aliases are on this CU .... ..1. CUIIPLDV X'02' CUIIPLDV This CUIBK was built during system init when the IPL device was being init'ed .... ...1 CUISETCH X'01' CUISETCH IDT has already done Set Sys Char CCW 0125 293 Bitstring 1 CUIMCLIC Supported by microcode and LIC feature code installed 1... .... CUISKFV2 X'80' CUISKFV2 Shark FlashCopy Version 2 .1.. .... CUISKFVL X'40' CUISKFVL Shark Full Volume ..1. .... CUISKTAR X'20' CUISKTAR 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. 0126 294 Bitstring 1 CUISUMUC Summary UC recovery in progress flag The CUIPVOPR byte indicates the PAV mode that this control unit is currently operating in (No PAV, Basic PAV, or HyperPAV). NOTES : The PAV operating mode might be undeterminable for a CU that does not have HyperPAV capabilities. For example, a 2105 CU with Basic PAV capabilities with no PAV Alias devices defined cannot be distinguished from a 2105 CU with NO PAV capabilities. 0127 295 Bitstring 1 CUIPVOPR CU PAV Operating Status Flag 00000001 CUINPVOP X'01' CUINPVOP CU is operating in No PAV mode 00000002 CUIPAVOP X'02' CUIPAVOP CU is operating in Basic PAV mode 00000003 CUIHYPOP X'03' CUIHYPOP CU is operating in HyperPAV mode 000000FF CUIUNDET X'FF' CUIUNDET CU is either running in Basic PAV mode with no aliases currently defined or it is running in No PAV mode (this setting is only for CU's that don't have HyperPAV capabilities) The CUIPVALW byte indicates the highest level of PAV devices allowed for this control unit (No PAV, Basic PAV, or HyperPAV) by CP irregardless of the hardware capabilities of the control unit. CP will always allow the CU to operate in the highest level of PAV mode (HyperPAV) UNLESS the user has indicated what is allowed for this control unit via the CU config file statement or the SET CU command. 0128 296 Bitstring 1 CUIPVALW CU PAV Allowed Indicator 00000001 CUINPVAL X'01' CUINPVAL CU allowed to operate in NOPAV mode 00000002 CUIPAVAL X'02' CUIPAVAL CU allowed to operate in PAV mode 00000003 CUIHYPAL X'03' CUIHYPAL CU allowed to operate in HyperPAV mode The CUIHPVHW byte indicates the PAV capability that is currently installed in the hardware for a control unit that has the potential to use HyperPAV devices when all the required microcode and LICs are installed. 0129 297 Bitstring 1 CUIHPVHW HyperPAV CU Current HW Capabilities 00000000 CUINOTHW X'00' CUINOTHW CU not a HyperPAV capable controller 00000001 CUINPVHW X'01' CUINPVHW HyperPAV CU with NO PAV capabilites 00000002 CUIPAVHW X'02' CUIPAVHW HyperPAV CU with Basic PAV capabilities 00000003 CUIHYPHW X'03' CUIHYPHW HyperPAV CU with HyperPAV capabilities 012A 298 Bitstring 2 CUINUM CU Number 012C 300 Bitstring 1 CUILSS Logical Subsystem ID 012D 301 Bitstring 3 * Reserved for future IBM use 0130 304 Bitstring 8 * Reserved for future IBM use 0138 312 Bitstring 8 * Reserved for future IBM use 0140 320 Bitstring 8 * Reserved for future IBM use 0148 328 Dbl-Word 8 CUIBKEND (0) END OF CUIBK 00000029 CUISIZE (*-CUIBK+7)/8 SIZE OF CUIBK 0042 66 Bitstring 14 CUITSSID Tape Subsystem ID 0042 66 Bitstring 2 CUIDSSID DASD Subsystem ID
CUIBK Storage Layout
*** CUIBK - CONTROL UNIT INFORMATION BLOCK * * +---------------------------+---------------------------+ * 0 | CUINXTCU | CUIRDEVS | * +---------------------------+---------------------------+ * 8 | | * = CUIAQLCK = * | | * +---------------------------+---------------------------+ * 38 | CUIAEBK | CUIDEDCT | * +------+------+-------------+---------------------------+ * 40 |:POLL |:SFLG | CUISSID | * +------+------+ | * | | * +-------------------------------------------------------+ * 50 | | * = CUIDTLCK = * | | * +-------------+-------------+------+------+------+------+ * 80 | CUICFWID | CUIDVSC |:SCAS |:SDCCO|:NVCAS|:NVSCO| * +-------------+------+------+------+------+------+------+ * 88 | CUICUID |:CUMN |:FEAT | CUILSBK | * +-------------+------+------+-------------+-------------+ * 90 | CUILSLN | CUIOPRS | CUIPMIH | * +---------------------------+------+------+------+------+ * 98 | CUISUCIO |:LEVEL|:SSFG |:GLBST|:LSACP| * +-------------+-------------+------+------+------+------+ * A0 | CUISMIH | CUIEOPR | CUITOKND | * +-------------+-------------+---------------------------+ * A8 | CUIGRSBK | CUISUCNT | * +---------------------------+---------------------------+ * B0 | | * = CUICDTLK = * | | * +---------------------------+---------------------------+ * C8 | CUICUIRQ | CUICUILT | * +---------------------------+---------------------------+ * D0 | | * = CUIGQLCK = * | | * +---------------------------+---------------------------+ * 100 | CUICUIFG | | * +---------------------------+ | * | CUITTID | * | +-----------------------------------------+ * 110 | | CUITLID | * +-------------+ | * | | * +---------------------------+------+------+------+------+ * 120 | CUIARSV |:FLAGS|:MCLIC|:SUMUC|:PVOPR| * +------+------+-------------+------+------+------+------+ * 128 |:PVALW|:HPVHW| CUINUM |CUILSS|////////////////////| * +------+------+-------------+------+--------------------+ * 130 |///////////////////////////////////////////////////////| * +-------------------------------------------------------+ * 138 |///////////////////////////////////////////////////////| * +-------------------------------------------------------+ * 140 |///////////////////////////////////////////////////////| * +-------------------------------------------------------+ * *** CUIBK - CONTROL UNIT INFORMATION BLOCK *** Overlay for CUISSID in CUIBK * * +-----------------------------------------+ * 40 ... 42 | CUITSSID | * +-------------+ | * | | * +-------------------------------------------------------+ * 50 * *** Overlay for CUISSID in CUIBK *** Overlay for CUISSID in CUIBK * * +-------------+ * 40 ... 42 | CUIDSSID | 44 * +-------------+ * *** Overlay for CUISSID in CUIBK
CUIBK Cross Reference
Symbol Dspl Value -------------- ---- ----- CUIAEBK 0038 CUIAQLCK 0008 CUIARSV 0120 CUIASCF 0094 00000040 CUIAUTO 0094 00008000 CUIBKEND 0148 CUICDTLK 00B0 CUICFWDA 0085 20 CUICFWDD 0085 10 CUICFWID 0080 CUICODS 00A2 00008000 CUICPALW 0124 10 CUICUID 0088 CUICUIFG 0100 CUICUILT 00CC CUICUIRQ 00C8 CUICUMN 008A CUIDCNVS 009C 40 CUIDEDCT 003C CUIDGOP 0094 00001000 CUIDSSID 0042 CUIDTLCK 0050 CUIDVSC 0082 CUIDWDS 0094 00000010 CUIENVA 0094 00000008 CUIEOPR 00A2 CUIFEAT 008B CUIFICON 0124 40 CUIFLAGS 0124 CUIGLBST 009E CUIGQLCK 00D0 CUIGRPD 008B 80 CUIGRSBK 00A8 CUIHPALS 0124 08 CUIHPVHW 0129 CUIHYPAL 0128 00000003 CUIHYPHW 0129 00000003 CUIHYPOP 0127 00000003 CUIIMCC 00A2 00002000 CUIIMLNA 0085 40 CUIINTR 0094 00000100 CUIIPLDV 0124 02 CUIIRFM 0094 00000004 CUILEVEL 009C CUILIMGR 0094 CUILMC1 0094 00000080 CUILMSW 0094 00000002 CUILSACP 009F CUILSACR 009F 00000005 CUILSAEM 009F 00000007 CUILSAHA 009F 00000000 CUILSANM 009F 00000001 CUILSAST 009F 00000003 CUILSBK 008C CUILSLN 0090 CUILSS 012C CUIMANM 0094 00002000 CUIMCLIC 0125 CUIMPM 008B 02 CUINOTHW 0129 00000000 CUINPVAL 0128 00000001 CUINPVHW 0129 00000001 CUINPVOP 0127 00000001 CUINUM 012A CUINUMVL 0124 20 CUINVCA 0086 80 CUINVCAS 0086 CUINVCD 0086 20 CUINVDM 0087 80 CUINVOP 0087 20 CUINVPE 0087 40 CUINVPOF 0086 10 CUINVSCO 0087 CUINVTM 0086 40 CUINXTCU 0000 CUIOFFL 0094 00000200 CUIOOCV 0094 00000020 CUIOPRS 0094 CUIPAUS 0094 00004000 CUIPAVAL 0128 00000002 CUIPAVHW 0129 00000002 CUIPAVOP 0127 00000002 CUIPMIH 0096 CUIPOLL 0040 CUIPOLL1 0040 80 CUIPOLL2 0040 40 CUIPVALW 0128 CUIPVOPR 0127 CUIQSMUC 0041 40 CUIRDEVS 0004 CUIRSRL 008B 04 CUISCAS 0084 CUISCNVS 009C 80 CUISCPOF 0084 10 CUISCTM 0084 40 CUISDCCO 0085 CUISERP 00A2 00001000 CUISETCH 0124 01 CUISFLG 0041 CUISFTY 0094 00000800 CUISFWRE 009E 80 CUISFWSU 009E 40 CUISHARK 0124 80 CUISIZE 0148 00000029 CUISKFVL 0125 40 CUISKFV2 0125 80 CUISKTAR 0125 20 CUISMIH 00A0 CUISNSS 009D 80 CUISPM 008B 01 CUISSCA 0084 80 CUISSCD 0084 20 CUISSDM 0085 80 CUISSFG 009D CUISSID 0042 CUISUCIO 0098 CUISUCNT 00AC CUISUMUC 0126 CUITLID 0112 CUITOKND 00A4 CUITSSID 0042 CUITTID 0104 CUIUNDET 0127 000000FF CUIVOES 0094 00000001 CUIVOPD 00A2 00004000 CUIVSNO 0094 00000400
Copyright IBM Corporation, 1990, 2009