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

Prolog  

Control Block Contents  

MCVBK DSECT

Storage Layout  

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


This information is based on VM/ESA 2.4.0.
Last updated on 3 Aug 1999 at 12:13:28 EDT.
Copyright IBM Corporation, 1990, 1999