Programming Interface Information:
This information is NOT intended to be used as Programming Interfaces of z/VM. |
MCVBK
Control Block Contents
MCVBK DSECT
Cross Reference (Contains links to field and bit definitions)
MCVBK Prolog
NAME : HCPMCVBK DESCRIPTION: VIRTUAL MACHINE CHECK BLOCK DSECT : MCVBK FUNCTION : HCPMCVBK MAINTAINS THE DESCRIPTION OF A MACHINE CHECK INCIDENT BEFORE THE INTERRUPT IS REFLECTED TO THE GUEST. THERE ARE THREE TYPES OF MCVBKS MAINTAINED IN THE SYSTEM. MCVBK (DYNAMICALLY ALLOCATED MCVBK) STORAGE IS OBTAINED FOR A DYNAMICALLY ALLOCATED MCVBK WHEN REQUIRED. IT HAS TWO USES. THE CONTROL PROGRAM BUILDS MCVBKS WHEN SOME SYSTEM INCIDENT, THAT IS NOT A REAL MACHINE CHECK, IS TO BE REFLECTED TO THE GUEST AS A MACHINE CHECK. IT IS ALSO USED TO MAKE COPIES OF MCVBKS TO ALLOW THE REFLECTION OF MACHINE CHECKS TO A GUEST TO OCURR ASYNCHRONOUSLY WITH OTHER CP FUNCTION. MCVBK (CPU MCVBK) WE REFER TO THIS MCVBK AS THE 'CPU MCVBK' BECAUSE EACH CPU OWNS ONE, AND ALSO TO DISTINGUISH IT FROM THE 'SYSTEM TERMINATION MCVBK' DESCRIBED BELOW. THE CPU MCVBK CONTAINS A DESCRIPTION OF A REAL ERROR INCIDENT (IF ANY) CURRENTLY IN PROGRESS ON THIS CPU. IT IS NEEDED MAINLY FOR THE BENEFIT OF THE VIRTUAL SIDE OF THE SYSTEM (HCPGMCMC) SO THAT MACHINE CHECKS CAN BE REFLECTED TO GUESTS. HCPMCH CALLS HCPGMCMC AND PASSES THE CPU MCVBK CONTAINING THE DESCRIPTION OF THE INCIDENT. THE CPU MCVBK IS ANCHORED IN THE PREFIX PAGE BY 'PFXMCVBK'. DATA IS PLACED IN THE MCVBK AT THE START OF AN INCIDENT AND IS CLEARED AT THE END OF THE INCIDENT SO THAT THE BLOCK REMAINS EMPTY UNTIL THE NEXT INCIDENT. MCVBK (SYSTEM TERMINATION MCVBK) THERE ARE ALSO 'SYSTEM TERMINATION' MCVBKS (THERE ARE 32 IN THE SYSTEM). THEY ARE PERMANENTLY ALLO- CATED IN A WORK AREA HCPWRKMV AND REMAIN INTACT ACROSS A SYSTEM TERMINATION AND SOFTWARE-RE-IPL. THEY ARE USED TO PASS REAL MACHINE CHECK (OR OTHER SYSTEM INCIDENT) DESCRIPTIONS TO INDIVIDUAL VMDBKS IN THE V=R GUEST CONFIGURATION SO THAT MACHINE CHECKS MAY BY REFLECTED TO THE V=R GUEST AFTER THE SYSTEM HAS RE-IPL'D. AT SYSTEM TERMINATION TIME, HCPWRP CALLS HCPMCWMD. HCPMCWMD GATHERS INFORMATION FROM THE INDIVIDUAL CPU MCVBK'S (AND OTHER SOURCES) AND PLACE IT IN THE SYSTEM TERMINATION MCVBKS (ONE SYSTEM TERMINATION MCVBK IS USED TO RECORD THE STATE OF ONE REAL CPU). AFTER THE SOFTWARE-RE-IPL THESE MCVBKS ARE PASSED TO HCPGMCGS SO THAT A MACHINE CHECK CAN BE REFLECTED TO THE V=R GUEST IF APPROPRIATE. LOCATED BY : HCPWRKMC (ANCHOR) SYSTEM TERMINATION PERMANENT MCVBKS VMDMCV FIELD OF HCPVMDBK PFXMCVBK FIELD OF HCPPFXBK (PERMANENTLY ALLOCATED) MCVNEXT FORWARD CHAIN CHCMCV FIELD OF HCPCHCBK CREATED BY : HCPGMC TO SEPARATE MCVBKS RECEIVED INTO ELEMENTARY MACHINE CHECKS AND TO GENERATE MCVBKS FOR MACHINE CHECK REFLECTION TO A GUEST. HCPMCH TO COPY PERMANENTLY ALLOCATED MCVBK. HCPMCW WHEN GUEST WAS RUNNING ON A PROCESSOR THAT IS RESET. TO COPY MCVBK RECEIVED FROM HCPALL. HCPMPS ACQUIRES PERMANENTLY ALLOCATED MCVBK FOR EACH PROCESSOR. HCPRFC CREATES A CRW MCVBK. HCPVDB CREATES A CRW MCVBK. HCPVOF CREATES A CRW MCVBK. HCPVSC CREATES A CRW MCVBK. DELETED BY : HCPMCH DELETES MCVBKS CREATED BY HCPMCH HCPMCW DELETES MCVBKS CREATED BY HCPMCW HCPMCV DELETES MCVBK AFTER REFLECTING MACHINE CHECK TO THE GUEST HCPMPS RETURNS PERMANENTLY ALLOCATED MCVBK FOR EACH PROCESSOR. RELOCATION CONSIDERATIONS : This control block is relocated as part of a live guest relocation (LGR). The bits and fields that need to be relocated are defined in the corresponding LGRMCVBK COPY file. Whenever changes are made to this control block, consideration must be given to any effects these changes will have on a relocation. If any new fields or bits are defined, they may need to be relocated. If existing bits or fields are changed, corresponding modifications may be required in the LGR version of this control block. Consider also the effects of these changes on a relocation involving a back-level release of CP.
MCVBK Control Block Content
MCVBK DSECT
Hex Dec Type/Val Lng Label (dup) Comments ---- ---- --------- ---- -------------- -------- 0000 0 Structure MCVBK VIRTUAL MACHINE CHECK BLOCK 0000 0 Dbl-Word 8 MCVMCIC (0) MACHINE CHECK INTERRUPTION CODE (FOR PURPOSES OF HCPGMC, THIS APPLIES TO THE MCVVMDBK GUEST, EXCEPT FOR THE STORAGE ERROR BITS WHICH APPLY TO MCVFSAUS.) 0000 0 Signed 4 MCVMCWD0 (0) FIRST WORD OF MCVMCIC 0000 0 Bitstring 2 MCVMCB01 (0) BYTES 0 AND 1 OF MCVMCIC 0000 0 Bitstring 1 MCVMCIC0 MACHINE CHECK IRPT CODE BYTE 0 1111 1111 MCIPRIM0 X'FF' MCIPRIM0 PRIMARY MACHINE CHECK BITS - BYTE 0 1... .... MCICSD X'80' MCICSD SYSTEM DAMAGE BIT. .1.. .... MCICPD X'40' MCICPD PROCESSING DAMAGE BIT. ..1. .... MCICSR X'20' MCICSR SYSTEM RECOVERY BIT. ...1 .... MCICITD X'10' MCICITD INTERVAL TIMER DAMAGE. (370 GUESTS) .... 1... MCICCD X'08' MCICCD TIMING (CLOCK) FACILITY DAMAGE. .... .1.. MCICED X'04' MCICED EXTERNAL DAMAGE. .... ...1 MCICDG X'01' MCICDG DEGRADATION BIT. 0001 1 Bitstring 1 MCVMCIC1 MACHINE CHECK IRPT CODE BYTE 1 1111 .... MCIPRIM1 X'F0' MCIPRIM1 PRIMARY MACHINE CHECK BITS - BYTE 1 1... .... MCICW X'80' MCICW WARNING BIT. .1.. .... MCICCRW X'40' MCICCRW PENDING-CRW REPORT. ..1. .... MCICSP X'20' MCICSP SERVICE PROCESSOR DAMAGE. ...1 .... MCICCSD X'10' MCICCSD CHANNEL-SUBSYSTEM DAMAGE. .... ..1. MCICBU X'02' MCICBU 'BACKED UP' BIT. .... ...1 MCICDL X'01' MCICDL 'DELAYED' BIT. (370 GUESTS) 0002 2 Bitstring 1 MCVMCIC2 MACHINE CHECK IRPT CODE BYTE 2 1... .... MCICSE X'80' MCICSE STORAGE ERROR UNCORRECTED. .1.. .... MCICSC X'40' MCICSC STORAGE ERROR CORRECTED. ..1. .... MCICKE X'20' MCICKE STORAGE-KEY ERROR UNCORRECTED. ...1 .... MCICSDG X'10' MCICSDG STORAGE DEGRADATION. MODIFIES STORAGE ERROR CORRECTED. .... 1... MCICVWP X'08' MCICVWP BITS 12-15 OF MC OLD PSW VALID. .... .1.. MCICVMS X'04' MCICVMS SYSTEM MASK & KEY OF MC OLD PSW VALID. .... ..1. MCICVPM X'02' MCICVPM PROGRAM MASK & CC OF MC OLD PSW VALID. .... ...1 MCICVIA X'01' MCICVIA INSTR ADDR OF MC OLD PSW IS VALID. 0003 3 Bitstring 1 MCVMCIC3 MACHINE CHECK IRPT CODE BYTE 3 1... .... MCICVFA X'80' MCICVFA FAILING STORAGE ADDRESS IS VALID. ..1. .... MCICVED X'20' MCICVED EXTERNAL-DAMAGE CODE IS VALID. ...1 .... MCICVFP X'10' MCICVFP FP REGISTERS STORED ARE VALID. .... 1... MCICVGR X'08' MCICVGR GP REGISTERS STORED ARE VALID. .... .1.. MCICVCR X'04' MCICVCR CONTROL REGISTERS STORED VALID. .... ..1. MCICVLG X'02' MCICVLG EXTENDED LOGOUT AREA IS VALID. .... ...1 MCICVST X'01' MCICVST INST. MODIFIED STORAGE IS VALID. 0004 4 Signed 4 MCVMCWD1 (0) SECOND WORD OF MCVMCIC 0004 4 Bitstring 1 MCVMCIC4 MACHINE CHECK IRPT CODE BYTE 4 1... .... MCICIE X'80' MCICIE INDIRECT STORAGE ERROR .1.. .... MCICVAR X'40' MCICVAR ACCESS REGISTERS STORED ARE VALID ..1. .... MCICDA X'20' MCICDA DELAYED ACCESS EXCEPTION BIT 0005 5 Bitstring 1 MCVMCIC5 MACHINE CHECK IRPT CODE BYTE 5 ..1. .... MCICVTPR X'20' MCICVTPR TOD programmable register validity ...1 .... MCICVXFP X'10' MCICVXFP Additional FP Registers Validity (ESA390) FP Control Register Validity (zArch) .... 1... MCICAR X'08' MCICAR Ancillary Report Bit .... ..1. MCICVCT X'02' MCICVCT CPU TIMER STORED IS VALID. .... ...1 MCICVCC X'01' MCICVCC CLOCK COMPARATOR STORED IS VALID. 0006 6 Bitstring 1 MCVMCIC6 MACHINE CHECK IRPT CODE BYTE 6 0007 7 Bitstring 1 MCVMCIC7 MACHINE CHECK IRPT CODE BYTE 7 0008 8 Signed 4 MCVCRWS CHANNEL REPORT WORD ANCHOR 000C 12 Signed 4 * Reserved for IBM use 0010 16 Signed 4 MCVVMDBK ADDR OF VMDBK RUNNING ON A REAL CPU AT THE TIME THE REAL CPU STATE WAS RECORDED IN THIS MCVBK. (FROM PFXRNUSR) 0014 20 Signed 4 MCVFSAUS ADDR OF VMDBK OWNING THE BAD FRAME IF HOST SEES A STORAGE ERROR AND VALID FSA. OTHERWISE ADDR IS ZERO. 0018 24 Bitstring 1 MCVFLAG MCVBK BIT FLAGS. 1... .... MCVABEND X'80' MCVABEND FAILURE IS AN ABEND, NOT A MACHINE CHECK. (APPLIES TO THE MCVVMDBK GUEST FOR HCPGMC.) .1.. .... MCVCKSTP X'40' MCVCKSTP FAILURE IS A CHECK-STOP, NOT A MACHINE CHECK. OR FAILURE IS TIME-OUT + CHECK-STOP. MCVMCIC AND MCVFSAD ARE PROBABLY 0. (APPLIES TO MCVVMDBK GUEST FOR HCPGMC.) ..1. .... MCVTMOUT X'20' MCVTMOUT FAILURE IS TIMEOUT, NOT A MACHINE CHECK. MCVCKSTP WILL ALSO BE SET IF 'SIGP SENSE' SHOWS CHECK-STOP AS CAUSE. MCVMCIC & MCVFSAD ARE PROBABLY ZERO. (APPLIES TO MCVVMDBK GUEST FOR HCPGMC.) ...1 .... MCVCUTOF X'10' MCVCUTOF GUEST WAS TERMINATED ABRUPTLY. IF RUNNING SIE AT THE TIME, THE GUEST HAS NOT BEEN 'UN-RUN'. THE ONLY EXAMPLE AT PRESENT: GUEST WAS STOPPED BY SIGP RESET. (APPLIES TO R11 GUEST FOR HCPGMC.) .... 1... MCVCMPLT X'08' MCVCMPLT ANY DAMAGE TO THE TASK THAT WAS RUNNING WAS REPAIRED BY THE MACHINE-CHECK FLIH. EITHER: (1) A HOST TASK INTERRUPTED BY MACHINE CHECK WAS LATER RESUMED AND COMPLETED SUCCESSFULLY, OR (2) ALL DAMAGE TO AN INTERRUPTED GUEST HAS BEEN CORRECTED. (APPLIES TO THE MCVVMDBK GUEST FOR HCPGMC.) .... .1.. MCVQWRK X'04' MCVQWRK AT THE TIME OF THE INCIDENT THERE WAS QUEUED WORK FOR THE GUEST, BUT IT HAS BEEN LOST (NEVER COMPLETED). (APPLIES TO R11 GUEST FOR HCPGMC.) .... ..1. MCVSTGFX X'02' MCVSTGFX THE STORAGE ERROR OR STORAGE KEY ERROR IDENTIFIED BY THE FAILING STORAGE ADDRESS IN MCVFSAD HAS BEEN CORRECTED BY THE MACHINE-CHECK FLIH. THIS FLAG IS MEANINGFUL ONLY IF THERE WAS A STORAGE ERROR AND A VALID FSA. (APPLIES TO THE MCVFSAUS GUEST FOR HCPGMC.) .... ...1 MCVSTGLS X'01' MCVSTGLS Damage to the the guest's MCS linkage stack has occurred. (Applies to the MCVVMDBK guest for HCPGMC.) 0019 25 Bitstring 1 MCVFLAG2 MCVBK BIT FLAGS. 1... .... MCVFSIE X'80' MCVFSIE If set, CP was in the 'SIE' state at the time of the error. (Applies to MCVVMDBK guest for HCPGMC.) See HCPMCH for how this was determined. .1.. .... MCVHRUN X'40' MCVHRUN THIS IS A COPY OF PFXHRUN, TAKEN AT THE TIME OF THE ERROR. IF SET, THE VMDBK WAS IN THE 'RUN' STATE AT THE TIME OF THE ERROR. (APPLIES TO MCVVMDBK GUEST FOR HCPGMC.) ..1. .... MCVUNRUN X'20' MCVUNRUN THE MACHINE-CHECK HANDLER HAS SUCCESSFULLY UN-RUN THE GUEST. (THIS FLAG HAS MEANING ONLY IF MCVHRUN IS SET.) (APPLIES TO MCVVMDBK GUEST FOR HCPGMC.) ...1 .... MCVSCS X'10' MCVSCS THE VIRTUAL CONFIGURATION MUST ENTER SYSTEM CHECK-STOP. 001A 26 Signed 2 MCVCPUAD THE CPU ADDRESS OF THE CPU IN THE REAL HARDWARE CONFIGURATION WHOSE ERROR IS BEING REPORTED THROUGH THIS MCVBK. 001C 28 Signed 4 MCVNEXT NEXT MCVBK IF ANY (APPLIES TO MCVVMDBK GUEST FOR HCPGMC.) 0020 32 Signed 4 MCVMCICX Machine Check Interruption Code Extension 0024 36 Signed 4 MCVEDMDC (0) MACHINE CHECK EXTERNAL-DAMAGE CODE. 0024 36 Bitstring 1 MCVEDCB0 Byte 0 of the external damage code .... .... MCEXTD0 X'00' MCEXTD0 No bits defined 0025 37 Bitstring 1 MCVEDCB1 Byte 1 of the external damage code .... .... MCEXTD1 X'00' MCEXTD1 No bits defined 0026 38 Bitstring 1 MCVEDCB2 Byte 2 of the external damage code ...1 .... MCEXTDSC X'10' MCEXTDSC Bit 19 - ETR Sync check 0027 39 Bitstring 1 MCVEDCB3 Byte 3 of the external damage code 1... .... MCEXTDSS X'80' MCEXTDSS Bit 24 - STP Sync Check .1.. .... MCEXTDIC X'40' MCEXTDIC Bit 25 - Island Condition ..1. .... MCEXTDCC X'20' MCEXTDCC Bit 26 - CTN Configuration Change ...1 .... MCEXTDCS X'10' MCEXTDCS Bit 27 - STP Clock Source Error 0028 40 Dbl-Word 8 MCVFASIT Failing-storage external ASIT (to be certified at the time of reflection as to whether the guest has still access to the failing space) 0030 48 Dbl-Word 8 MCVGFAD (0) 64 bit guest absolute failing addr 0030 48 Signed 4 MCV64HI High order word of 64 bit addr 0034 52 Signed 4 MCVFSAD 31 bit guest absolute failing addr ..11 .1.. MCV64LO MCVFSAD MCV64LO Low order word of 64 bit addr FOLLOWING ARITHMETIC USED TO PRODUCE MCVZNM1. 00000F00 MCVZNMZ1 (MCICVWP+MCICVMS+MCICVPM+MCICVIA) *256 THE FOLLOWING ARE MASK VALUES WHICH DEFINE VALIDITY BITS WITHIN THE MACHINE CHECK INTERRUPTION CODE WHICH ARE NORMALLY ON (VALID). MCVZNM1 IS FOR MCIC BITS 0-31. MCVZNM2 IS FOR MCIC BITS 32-63. THESE MASK VALUES ALSO DEFINE THE BITS WHICH ARE AND-ED TOGETHER WHEN MERGING TWO MACHINE CHECK INTERRUPTION CODES. BITS NOT CALLED OUT BY THE MASK VALUES ARE OR-ED TOGETHER. 00000F1D MCVZNM1 MCVZNMZ1+MCICVFP+MCICVGR+MCICVCR+ MCICVST 003B0000 MCVZNM2 ((MCICVAR*256)+MCICAR+MCICVCT+MCI CVCC+MCICVXFP+MCICVTPR) *65536 00000038 MCVLEN *-MCVBK LENGTH OF AN MCVBK. 00000007 MCVSIZE (*-MCVBK+7)/8 MCVBK SIZE IN DOUBLE WORDS 0000 0 Bitstring 2 * BYTES 0 AND 1 OF MCVMCIC 0002 2 Bitstring 4 MCVMCB25 BYTES 2 - 5 OF MCVMCIC 0006 6 Bitstring 2 * BYTES 6 AND 7 OF MCVMCIC
MCVBK Storage Layout
*** MCVBK - VIRTUAL MACHINE CHECK BLOCK * * +------+------+------+------+------+------+------+------+ * 0 |:MCIC0|:MCIC1|:MCIC2|:MCIC3|:MCIC4|:MCIC5|:MCIC6|:MCIC7| * +------+------+------+------+------+------+------+------+ * 8 | MCVCRWS |///////////////////////////| * +---------------------------+---------------------------+ * 10 | MCVVMDBK | MCVFSAUS | * +------+------+-------------+---------------------------+ * 18 |:FLAG |:FLAG2| MCVCPUAD | MCVNEXT | * +------+------+-------------+------+------+------+------+ * 20 | MCVMCICX |:EDCB0|:EDCB1|:EDCB2|:EDCB3| * +---------------------------+------+------+------+------+ * 28 | MCVFASIT | * +---------------------------+---------------------------+ * 30 | MCV64HI | MCVFSAD | * +---------------------------+---------------------------+ * 38 * *** MCVBK - VIRTUAL MACHINE CHECK BLOCK *** Overlay for MCVMCIC in MCVBK * * +-------------+---------------------------+-------------+ * 0 |/////////////| MCVMCB25 |/////////////| * +-------------+---------------------------+-------------+ * 8 * *** Overlay for MCVMCIC in MCVBK
MCVBK Cross Reference
Symbol Dspl Value -------------- ---- ----- MCEXTDCC 0027 20 MCEXTDCS 0027 10 MCEXTDIC 0027 40 MCEXTDSC 0026 10 MCEXTDSS 0027 80 MCEXTD0 0024 00 MCEXTD1 0025 00 MCICAR 0005 08 MCICBU 0001 02 MCICCD 0000 08 MCICCRW 0001 40 MCICCSD 0001 10 MCICDA 0004 20 MCICDG 0000 01 MCICDL 0001 01 MCICED 0000 04 MCICIE 0004 80 MCICITD 0000 10 MCICKE 0002 20 MCICPD 0000 40 MCICSC 0002 40 MCICSD 0000 80 MCICSDG 0002 10 MCICSE 0002 80 MCICSP 0001 20 MCICSR 0000 20 MCICVAR 0004 40 MCICVCC 0005 01 MCICVCR 0003 04 MCICVCT 0005 02 MCICVED 0003 20 MCICVFA 0003 80 MCICVFP 0003 10 MCICVGR 0003 08 MCICVIA 0002 01 MCICVLG 0003 02 MCICVMS 0002 04 MCICVPM 0002 02 MCICVST 0003 01 MCICVTPR 0005 20 MCICVWP 0002 08 MCICVXFP 0005 10 MCICW 0001 80 MCIPRIM0 0000 FF MCIPRIM1 0001 F0 MCVABEND 0018 80 MCVCKSTP 0018 40 MCVCMPLT 0018 08 MCVCPUAD 001A MCVCRWS 0008 MCVCUTOF 0018 10 MCVEDCB0 0024 MCVEDCB1 0025 MCVEDCB2 0026 MCVEDCB3 0027 MCVEDMDC 0024 MCVFASIT 0028 MCVFLAG 0018 MCVFLAG2 0019 MCVFSAD 0034 MCVFSAUS 0014 MCVFSIE 0019 80 MCVGFAD 0030 MCVHRUN 0019 40 MCVLEN 0034 00000038 MCVMCB01 0000 MCVMCB25 0002 MCVMCIC 0000 MCVMCICX 0020 MCVMCIC0 0000 MCVMCIC1 0001 MCVMCIC2 0002 MCVMCIC3 0003 MCVMCIC4 0004 MCVMCIC5 0005 MCVMCIC6 0006 MCVMCIC7 0007 MCVMCWD0 0000 MCVMCWD1 0004 MCVNEXT 001C MCVQWRK 0018 04 MCVSCS 0019 10 MCVSIZE 0034 00000007 MCVSTGFX 0018 02 MCVSTGLS 0018 01 MCVTMOUT 0018 20 MCVUNRUN 0019 20 MCVVMDBK 0010 MCVZNMZ1 0034 00000F00 MCVZNM1 0034 00000F1D MCVZNM2 0034 003B0000 MCV64HI 0030 MCV64LO 0034 34
Copyright IBM Corporation, 1990, 2011