HPlogo System Debug Reference Manual > Chapter 12 Dump Analysis Tool (DAT)

The DAT Macros

MPE documents

Complete PDF
Table of Contents
Index

E0201 Edition 4 ♥
E0300 Edition 3
E0692 Edition 3

The commands provided by DAT presuppose a solid background in MPE XL internals. To help reduce the need for every dump analysis engineer to possess detailed knowledge of MPE XL, a group of dump analysis macros have been developed to assist field and lab support personnel in the task of dump analysis.

This group of macros (MPEXL OS DAT MACROS, HP30357 A) is referred to as "The DAT Macros." An external specification document and quick reference guide is available from HP support organizations. The DAT program, supported macros, (MOS), and symbolic data type files (SYMOS, VAMOS)are distributed in the TELESUP account.

How to Get Started with the DAT Macros


Using the DAT macro package is the simplest way to analyze a dump. Additional documentation is required to make use of the macros. Contact your Response Center for further information.

To use this package, log on to the TELESUP account in the USER group. The TELESUP account is where the DAT program, the macro files, and the symbolic data type files are located. The first step is to start the DAT program and invoke the DAT Macros startup macro. Entering "macstart" loads Macros and symbols.

Examples


Some examples of DAT macros follow. Please note that these macros are dynamic. They will change and be improved. The output from these examples may differ from what future macros produce.

   :DAT

   DAT XL A.00.00   Copyright Hewlett-Packard Co. 1987.  All rights reserved.

   $e ($0) nmdat > macstart

   Welcome to the DAT Macro facility.

   Enter the dump file set name to process: d7850.dumps

   Dump Title: System abort 1019 subsys 101 System Halt 7, $03FB
   Last PIN  : 77

   MPE XL HP31900a.21.19   USER VERSION: X.13.20

   (UNWIND   - Unwinding Out Of Lockup Loop)
   (UWLOCKUP - HALT $7,$3fb = #7,#1019)

   OS Symbol file SYMOS.OSA20.TELESUP is now open.

   Next line maps VAMOS.OSA20.TELESUP
   1  VAMOS.OSA20.TELESUP   10000.0 Bytes = 1bd0
   WARNING!  OS Build ID Timestamps in System Globals and SYMOS do NOT match.
      OS Build ID Timestamp in System Globals   = 1989050816
      OS Build ID Timestamp in SYMOS File       = 1989040717

   OS Macros restored from file MOS.OSA20.TELESUP.
   OS DAT MACROS HP30357 A.00.27   Copyright Hewlett-Packard Co.  1987

At this point, the dump has been opened and all of the DAT macros have been loaded.

This example displays the basic state of the machine at the time it was dumped.

 $11e ($77) nmdat > machine_state
 (UNWIND   - Unwinding Out Of Lockup Loop)
 (UWLOCKUP - HALT $7,$3fb = #7,#1019)

 HP3000 Series 930 With Processor Revision 0.

 SYSTEM ABORT #1019 FROM SUBSYSTEM #101 (Memory Manager)
 The MEMORY MANAGER was unable to access the I/O notification port.

 MPE/XL VERSION:  A21.19          CPU: PROCESS_RUNNING

 SYSTEM CONSOLE AT LDEV #20

CURRENT REGISTERS: RO =00000000 c0000000 002d5838 c0000000 R4 =00000002 4027637c 00000001 40276310 R8 =40276370 20000000 ffffffff 00000001 R12=00000001 00000b3a fffffd88 00000000 R16=0000000a ffffffff 00000000 809766bc R20=00000001 00000e00 ffffffff 00000000 R24=00000000 00000000 03fb0065 c0202008 R28=00000001 40276370 40276600 002d5838 IPSW=0004ff0b=jthlnxbCvmrQpDI PRIV=0 SAR=0002 PCQF=a.196eb8 a.196ebc SRT=0000000a 000002e4 0000000a 00000000 SR4=0000000a 000002e4 0000000b 0000000a TRO=00814200 00844200 00000000 40276600 TR4=c0000000 00002058 0000002e 00000000 PID1=0280=0140(W) PID2=07de=03ef(W) PID3=0000=0000(W) PID4=0000=0000(W) RCTR=00000000 ISR=0000000a IOR=00000000 IIR=00020005 IVA=00169800 ITMR=c931977a EIEM=ffffffff EIRR=80000000 CCR=0080 (UNWIND - Unwinding Out Of Lockup Loop) (UWLOCKUP - HALT $7,$3fb=#7,#1019)
The following example shows the dispatcher's state and queues:

   $11f ($77) nmdat > process_dispatcher

                           Processes on the Dispatch Queue
                           -------------------------------

   ===== DISPATCHER INFORMATION FOR A PROCESS =====

   Sysproc  PIN #       State         Wait Event    Pri   Class  Blocked Reason
   - -----  -----       ----------    ---   -----  --------------
     $77    EXECUTING   Not Waiting   $1aff  DS    NOT_BLOCKED
     $2d    READY       Not Waiting   $1aff  DS    MEM_MGR_PREFETCH
     $6f    READY       Not Waiting   $1aff  DS    MEM_MGR_PREFETCH
     $72    READY       Not Waiting   $1aff  DS    MEM_MGR_PREFETCH
     $40    READY       Not Waiting   $1aff  DS    MEM_MGR_PREFETCH
     $39    READY       Not Waiting   $1aff  DS    NM_CODE_PAGE_FAULT
     $47    READY       Not Waiting   $1aff  DS    USER_TO_DEBUG_MSG
     $8B    READY       Not Waiting   $1aff  DS    NOT_BLOCKED

   AS  BASEPRI= $70ff  LIMPRI= $4e7f
   BS  BASEPRI= $4dff  LIMPRI= $34ff
   CS  BASEPRI= $33ff  LIMPRI= $1bff  MINQUANTUM= $186a00  MAXQUANTUM= $f42400
   DS  BASEPRI= $1aff  LIMPRI= $8ff
   ES  BASEPRI= $7ff   LIMPRI= $17f

   Processor State  : PROCESS_RUNNING
   Disp Disable PIN : $7ffd     Disp Disable Count : $0
   Active PIN       : $77       Active Pri         : $1aff
   Pending PIN      : $7ffd     Pending Pri        : $0

   Total of #8 processes

The following example shows all the configured devices on the system. This macro was terminated with a Control-Y before it reached normal completion.

   $121 ($77) nmdat > config_device_ldev

   LDEV#  TYPE              LDM Port  LDM PDA     DM Port   DM PDA
   ----    ----              --------  -------     -------   ------
   1      IO-DISC           ffffffca  b.80429b00  ffffffcb  b.80140240
   2      IO-DISC           ffffffa2  b.8042b180  ffffffa3  b.801409c0
   3      IO-DISC           ffffffa0  b.8042c800  ffffffa1  b.80141140
   4      IO-DISC           ffffff9e  b.8042de80  ffffff9f  b.801418c0
   5      IO_TERMINAL       fffffec6  b.80446e80  0         0.0
   6      IO_PRINTER        ffffff88  b.8043a900  ffffff89  0.0
   7      IO_TAPE           ffffff91  b.80436580  ffffff92  b.80fe8780
   8      IO_TAPE           ffffff93  b.80434f00  ffffff94  b.80fe8140
   9      IO_TERMINAL       fffffec5  b.80447dc0  0         0.0
   10     IO_TAPE           ffffff8f  b.80437c00  ffffff90  b.80fe8dc0
   11     IO_TERMINAL       fffffec4  b.80448d00  0          0.0
   12     IO_TERMINAL       fffffec3  b.80449c40  0          0.0
   13     IO_TERMINAL       fffffec2  b.8044ab80  0          0.0
   14     IO_DISC           ffffff9c  b.8042f500  ffffff9d  b.80142040
   15     IO_DISC           ffffff9a  b.80430b80  ffffff9b  b.801427c0
   16     IO_DISC           ffffff98  b.80432200  ffffff99  b.80142f40
   17     IO_DISC           ffffff96  b.80433880  ffffff97  b.801436c0
   18     IO_TERMINAL       fffffec1  b.8044bac0  0         0.0
   19     IO_SERIAL_PRINTER ffffff8d  b.80439280  ffffff8e  a.c0c38140
   20     IO_TERMINAL       ffffffcd  b.80428480  ffffffce  b.80080240
   21     IO_TERMINAL       fffffec0  b.8044ca00  0         0.0
   22     IO_TERMINAL       fffffebf  b.8044d940  0         0.0
   23     IO_TERMINAL       fffffebe  b.8044e880  0         0.0
   24     IO_TERMINAL       fffffebd  b.8044f7c0  0         0.0
   100    IO_TERMINAL       ffffff50  b.8043bf80  ffffff51  a.cc810240
   101    IO_TERMINAL       ffffff4b  b.8043c5c0  ffffff4c  a.cc810cc0
   102    IO_TERMINAL       ffffff46  b.8043cc00  ffffff47  a.cc811740
   103    IO_TERMINAL       ffffff41  b.8043d240  ffffff42  a.cc8121c0
   104    IO_TERMINAL       ffffff3c  b.8043d880  ffffff3d  a.cc812c40
   105    IO_TERMINAL       ffffff37  b.8043dec0  ffffff38  a.cc8136c0
   108    IO_TERMINAL       ffffff32  b.8043e500  ffffff33  a.cc814140
   109    IO_TERMINAL       ffffff2d  b.8043eb40  ffffff2e  a.cc814bc0
   110    IO_TERMINAL       ffffff28  b.8043f180  ffffff29  a.cc815640
   Control-Y encountered

The following example shows all of the jobs and sessions on the system.

 JOBNUM  STATE  IPRI JIN  JLIST  INTRODUCED JOB NAME             JSMAIN PIN

 #S20    EXEC   8    108   108   135  15:47 DAVE,MANAGER.SYS,PUB        $23
 #s17    EXEC   8     20   20    135  14:37 DAVE,MANAAGER.SYS,PUB       $20
 #J7     EXEC   8     10S  12    135  13:43 PEGASUS,SMGR.TEST,PEGASUS   $21
 #J147   EXEC   8     10S  12    135  16:19 TPXRI16J,MGR.FVSTEST,TP     $4c
 #J10    EXEC   8     10S  12    135  13:43 PEGASUS,SMGR.TEST,PEGASUS   $35
 #J34    EXEC   8     10S  12    135  13:48 PEGASUS,SMGR.TEST,PEGASUS   $42
 #J22    EXEC   8     10S  12    135  13:46 PEGASUS,SMGR.TEST,PEGASUS   $27
 #J52    EXEC   8     10S  12    135  13:52 PEGASUS,SMGR.TEST,PEGASUS   $67
 #J28    EXEC   8     10S  12    135  13:47 PEGASUS,SMGR.TEST,PEGASUS   $48
 #J31    EXEC   8     10S  12    135  13:47 PEGASUS,SMGR.TEST,PEGASUS   $4e
 #J37    EXEC   8     10S  12    135  13:49 PEGASUS,SMGR.TEST,PEGASUS   $34
 #J40    EXEC   8     10S  12    135  13:49 PEGASUS,SMGR.TEST,PEGASUS   $53
 #J43    EXEC   8     10S  12    135  13:50 PEGASUS,SMGR.TEST,PEGASUS   $4d
 #J154   EXEC   8     10S  12    135  16:19 PHCRP13J,MGR.FVSTEST,PH     $61
 #J155   EXEC   8     10S  12    135  16:20 CICAL20J,MGR.FVSTEST,CI     $8c
 #J61    EXEC   8     10S  12    135  13:54 PEGASUS,SMGR.TEST,PEGASUS   $65
 #J55    EXEC   8     10S  12    135  13:53 PEGASUS,SMGR.TEST,PEGASUS   $6c
 #58     EXEC   8     10S  12    135  13:54 PEGASUS,SMGR.TEST,PEGASUS   $5c
 #J157   EXEC   8     10S  12    135  16:20 ACALG12J,MGR.FVSTEST,AC     $44
 #S8     EXEC   8    122   122   135  13:55 MGR.FVSTEST,PUB             $6d

 20 JOBS:
     0 INITIALIZING;    0 INTRODUCED
     0 WAIT
    20 EXEC;   INCL     3 SESSIONS
     0 SCHEDULED;       0 SUSPENDED
     0 TERMINATING;     0 ERROR STATE
 JOBFENCE= 7;  JLIMIT= 60;  SLIMIT= 60

The above examples give a hint of the power and convenience of using the DAT macros package for dump analysis. There are many more macros; they format an operating system table, print process information, display resource allocation, help find deadlocks, and so on.




Operating DAT


Chapter 13 Standalone Analysis Tool (SAT)