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. |
MCVBK
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.
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' PRIMARY MACHINE CHECK BITS - BYTE 0 1... .... MCICSD X'80' SYSTEM DAMAGE BIT. .1.. .... MCICPD X'40' PROCESSING DAMAGE BIT. ..1. .... MCICSR X'20' SYSTEM RECOVERY BIT. ...1 .... MCICITD X'10' INTERVAL TIMER DAMAGE. (370 GUESTS) .... 1... MCICCD X'08' TIMING (CLOCK) FACILITY DAMAGE. .... .1.. MCICED X'04' EXTERNAL DAMAGE. .... ..1. MCICVFF X'02' VECTOR FACILITY FAILURE .... ...1 MCICDG X'01' DEGRADATION BIT. 0001 1 Bitstring 1 MCVMCIC1 MACHINE CHECK IRPT CODE BYTE 1 1111 .... MCIPRIM1 X'F0' PRIMARY MACHINE CHECK BITS - BYTE 1 1... .... MCICW X'80' WARNING BIT. .1.. .... MCICCRW X'40' PENDING-CRW REPORT. ..1. .... MCICSP X'20' SERVICE PROCESSOR DAMAGE. ...1 .... MCICCSD X'10' CHANNEL-SUBSYSTEM DAMAGE. .... .1.. MCICVFS X'04' VECTOR FACILITY SOURCE .... ..1. MCICBU X'02' 'BACKED UP' BIT. .... ...1 MCICDL X'01' 'DELAYED' BIT. (370 GUESTS) 0002 2 Bitstring 1 MCVMCIC2 MACHINE CHECK IRPT CODE BYTE 2 1... .... MCICSE X'80' STORAGE ERROR UNCORRECTED. .1.. .... MCICSC X'40' STORAGE ERROR CORRECTED. ..1. .... MCICKE X'20' STORAGE-KEY ERROR UNCORRECTED. ...1 .... MCICSDG X'10' STORAGE DEGRADATION. MODIFIES STORAGE ERROR CORRECTED. .... 1... MCICVWP X'08' BITS 12-15 OF MC OLD PSW VALID. .... .1.. MCICVMS X'04' SYSTEM MASK & KEY OF MC OLD PSW VALID. .... ..1. MCICVPM X'02' PROGRAM MASK & CC OF MC OLD PSW VALID. .... ...1 MCICVIA X'01' INSTR ADDR OF MC OLD PSW IS VALID. 0003 3 Bitstring 1 MCVMCIC3 MACHINE CHECK IRPT CODE BYTE 3 1... .... MCICVFA X'80' FAILING STORAGE ADDRESS IS VALID. ..1. .... MCICVED X'20' EXTERNAL-DAMAGE CODE IS VALID. ...1 .... MCICVFP X'10' FP REGISTERS STORED ARE VALID. .... 1... MCICVGR X'08' GP REGISTERS STORED ARE VALID. .... .1.. MCICVCR X'04' CONTROL REGISTERS STORED VALID. .... ..1. MCICVLG X'02' EXTENDED LOGOUT AREA IS VALID. .... ...1 MCICVST X'01' 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' INDIRECT STORAGE ERROR .1.. .... MCICVAR X'40' ACCESS REGISTERS STORED ARE VALID ..1. .... MCICDA X'20' DELAYED ACCESS EXCEPTION BIT 0005 5 Bitstring 1 MCVMCIC5 MACHINE CHECK IRPT CODE BYTE 5 ...1 .... MCICVXFP X'10' Additional FP Registers Validity .... 1... MCICAR X'08' Ancillary Report Bit .... ..1. MCICVCT X'02' CPU TIMER STORED IS VALID. .... ...1 MCICVCC X'01' 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 MCVFSAD GUEST ABSOLUTE FAILING STORAGE ADDRESS. (APPLIES TO THE MCVFSAUS GUEST FOR HCPGMC.) 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' FAILURE IS AN ABEND, NOT A MACHINE CHECK. (APPLIES TO THE MCVVMDBK GUEST FOR HCPGMC.) .1.. .... MCVCKSTP X'40' 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' 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' 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' 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' 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' 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' 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' 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' 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' 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' 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' No bits defined 0025 37 Bitstring 1 MCVEDCB1 Byte 1 of the external damage code 1... .... MCEXTDXN X'80' Bit 8 - Extended storage not operational .1.. .... MCEXTDXF X'40' Bit 9 - Extended storage control failure 0026 38 Bitstring 1 MCVEDCB2 Byte 2 of the external damage code 1... .... MCEXTDPS X'80' Bit 16 - Primary-Sync Damage .1.. .... MCEXTDEA X'40' Bit 17 - ETR Attachement Damage ..1. .... MCEXTDSL X'20' Bit 18 - Switch to local ...1 .... MCEXTDES X'10' Bit 19 - ETR Sync check 0027 39 Bitstring 1 MCVEDCB3 Byte 3 of the external damage code .... .... MCEXTD3 X'00' No bits defined 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) 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 001B0000 MCVZNM2 ((MCICVAR*256)+MCICAR+MCICVCT+MCI CVCC+MCICVXFP)*65536 00000030 MCVLEN *-MCVBK LENGTH OF AN MCVBK. 00000006 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 | MCVFSAD | * +---------------------------+---------------------------+ * 10 | MCVVMDBK | MCVFSAUS | * +------+------+-------------+---------------------------+ * 18 |:FLAG |:FLAG2| MCVCPUAD | MCVNEXT | * +------+------+-------------+------+------+------+------+ * 20 | MCVMCICX |:EDCB0|:EDCB1|:EDCB2|:EDCB3| * +---------------------------+------+------+------+------+ * 28 | MCVFASIT | * +-------------------------------------------------------+ * 30 * *** MCVBK - VIRTUAL MACHINE CHECK BLOCK *** Overlay for MCVMCIC in MCVBK * * +-------------+---------------------------+-------------+ * 0 |/////////////| MCVMCB25 |/////////////| * +-------------+---------------------------+-------------+ * 8 * *** Overlay for MCVMCIC in MCVBK
MCVBK Cross Reference
(contains links to field and bit definitions)Symbol Dspl Value -------------- ---- -----MCEXTDEA 0026 40
MCEXTDES 0026 10
MCEXTDPS 0026 80
MCEXTDSL 0026 20
MCEXTDXF 0025 40
MCEXTDXN 0025 80
MCEXTD0 0024 00
MCEXTD3 0027 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
MCICVFF 0000 02
MCICVFP 0003 10
MCICVFS 0001 04
MCICVGR 0003 08
MCICVIA 0002 01
MCICVLG 0003 02
MCICVMS 0002 04
MCICVPM 0002 02
MCICVST 0003 01
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 000C
MCVFSAUS 0014
MCVFSIE 0019 80
MCVHRUN 0019 40
MCVLEN 0028 00000030
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 0028 00000006
MCVSTGFX 0018 02
MCVSTGLS 0018 01
MCVTMOUT 0018 20
MCVUNRUN 0019 20
MCVVMDBK 0010
MCVZNMZ1 0028 00000F00
MCVZNM1 0028 00000F1D
MCVZNM2 0028 001B0000
Last updated on 3 Aug 1999 at 12:13:28 EDT.
Copyright IBM Corporation, 1990, 1999