| How to obtain Microvax Physical I/O Address from Machine Check
Virtual Address using SDA.
This example shows how a VA of 801820E5 converts to 2nd DMV11.
!!! Errorlog Machine Check and MXM Fatal Memory Error :-
******************************* ENTRY 33. *******************************
ERROR SEQUENCE 2020. LOGGED ON: SID 08000000
DATE/TIME 14-AUG-1991 17:40:47.10 SYS_TYPE 01010000
SCS NODE: VAX/VMS V5.2
MACHINE CHECK KA630
EXCEPTION PC 802AB0E4
ERROR PSL 04080000
INTERRUPT PRIORITY LEVEL = 08.
PREVIOUS MODE = KERNEL
CURRENT MODE = KERNEL
INTERRUPT STACK
SUMMARY CODE 00000080
READ BUS ERR, VAP IS VIRT ADDRS
PARAMETER ONE 801820E5 !!! Note VAP - Failing Virtual Address
CURRENT CONTENTS OF VAP REGISTER
PARAMETER TWO 00000003
INTERNAL STATE INFORMATION
_ ATDL REGISTER = 00(X)
_ STATE = 00(X)
_ ALU CONDITION CODE = 00(X)
_ VAX RESTART BIT = 00(X)
_ PC INCREMENT = 03(X)
******************************* ENTRY 34. *******************************
ERROR SEQUENCE 2021. LOGGED ON: SID 08000000
DATE/TIME 14-AUG-1991 17:40:47.10 SYS_TYPE 01010000
SCS NODE: VAX/VMS V5.2
FATAL MEMORY ERROR KA630
MSER 00000081
PARITY ERROR DETECTION ENABLED
CPU NXM ERROR !!!
CEAR 00000400
(* DATA NOT VALID *)
DEAR 00000400
(* DATA NOT VALID *)
!!! Find Physical Address from Machine Check Crash :-
$ ANA/CRASH SYS$SYSTEM
VAX/VMS System dump analyzer
Dump taken on 14-AUG-1991 17:40:47.10
MACHINECHK, Machine check while in kernel mode
SDA> sh stack
CPU 00 Processor stack
----------------------
Current operating stack (INTERRUPT):
805A5188 7FF5A974
805A518C 0000000E
805A5190 00000002
805A5194 7FF31A98
805A5198 7FF31A80
805A519C 805A51A0
805A51A0 80319177
805A51A4 041F0008
SP => 805A51A8 0000000C
805A51AC 00000080 !!! summary code
805A51B0 801820E5 !!! contents of VAP - Failing VA
805A51B4 00000003 !!! Parameter 2
805A51B8 802AB0E4 !!! PC - XDDRIVER+02064
805A51BC 04080000
805A51C0 00200000
805A51C4 00000000
805A51C8 805A4210
805A51CC 00000034
SDA> SH PAGE/SYS 801820E5;1 !!! Examine Page of Failing Virtual Address
System page table
-----------------
ADDRESS SVAPTE PTE TYPE PROT BITS PAGTYP LOC STATE
80182000 8113B040 94100000 IOPAG KW M K
!!!!! <------------ In I/O Space
SDA> EVAL/PTE 94100000 !!! Find Page Frame Number from PTE
|31 28|27 24|23 20|19 16|15 12|11 8|7
| | | | | | |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+-->
|1 | 0 0 1 0 |1 |--| 0 0 |--| 0| 100000
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+-->
Vld Prot= KW M Own=K W Page Frame Number
Page is Active and Valid
SDA> EVAL 100000@9 !!! Evaluate Page Frame Number
Hex = 20000000 Decimal = 536870912 !!! 20000000 equates to 760000(oct)
!!! Bits 8:0 of VAP (801820E5) contain byte offset - 0E5(hex) = 345(oct)
!!! Failing Physical I/O address = 760000+345 = 760345
$ MC SYSGEN !!! Find Failing Device - (XDB at 760340 - 2nd DMV11)
SYSGEN> SH /CONF
System CSR and Vectors on 15-AUG-1991 08:15:17.50
Name: PUA Units: 1 Nexus:0 (UBA) CSR: 772150 Vector1: 774 Vector2: 000
Name: PTA Units: 1 Nexus:0 (UBA) CSR: 774500 Vector1: 260 Vector2: 000
Name: XQA Units: 3 Nexus:0 (UBA) CSR: 774440 Vector1: 120 Vector2: 000
Name: XDA Units: 1 Nexus:0 (UBA) CSR: 760320 Vector1: 300 Vector2: 304
Name: XDB!!Units:!1!!Nexus:0!!!!(UBA)!CSR:!760340!!Vector1:!310!!Vector2:!314
Name: PUB Units: 1 Nexus:0 (UBA) CSR: 760374 Vector1: 320 Vector2: 000
Name: PTB Units: 1 Nexus:0 (UBA) CSR: 760504 Vector1: 324 Vector2: 000
Name: TXA Units: 8 Nexus:0 (UBA) CSR: 760560 Vector1: 340 Vector2: 344
Name: UVA Units: 1 Nexus:0 (UBA) CSR: 760460 Vector1: 330 Vector2: 334
************** CONFIRM FINDINGS BY ANALYSING FAILING PC *****************
SDA> EX/INST 802AB0E4 !!! Find Failing Code - Examine PC
802AB0E4: TSTB 01(R4)
SDA> EX R4
R4: 801820E0 "� .." !!! TSTB trying to access 801820E1
SDA> SH DEV !!! Find Failing Driver
I/O data structures
-------------------
DDB list
--------
Address Controller ACP Driver DPT DPT size
------- ---------- --- ------ --- --------
80193E48 DUA F11XQP DUDRIVER 80323920 4781
801940D0 OPA OPERATOR 80193C00 0514
80194430 MBA MBDRIVER 80139E00 098B
80194878 NLA NLDRIVER 80139E83 017F
8056B8A0 PUA PUDRIVER 80321710 2205
80563440 WSA WSDRIVER 8029E460 02F0
8055FB40 PTA PUDRIVER 80321710 2205
8055F540 MUA MTAACP TUDRIVER 8029FE90 38E0
8055F120 XQA XQDRIVER 802A3770 4FE0
8055EB80 XDA XDDRIVER 802A9080 2980
8055E9A0!!!!XDB In This Range ---> XDDRIVER!!!802A9080!!2980
8055E8E0 PUB PUDRIVER 80321710 2205
8055E6A0 DUB F11XQP DUDRIVER 80323920 4781
!!! Instruction in XDDRIVER DPT Range
!!! Address of inst = PC - DPT = 802AB0E4 - 802A9080 = 2064
!!! "TSTB Instruction at XDDRIVER+2064 did not access DMV11 at 760345"
|