Input From Processing Output DUMPINREC I DMPABEND PSA PROPSW [§i] 'I Parameter
List EJ File
Notes
1 Move the abend code from
DMPABEND into the problem report
area.
2 Identify the program check address
in the PSA Program Old PSW.
3 Call DMMIDM to identify the failing
module and displacement. If entered from DMMPRG, the
failing address will be in the fixed
nucleus portion of the dump or in a
pageable module. If entered from DMMCPA, the caller's
base (R 12) will be in the fixed nucleus
or in a pageable. module.
Using the addresses provided, and the
compressed nucleus map, calculate
the displacement of the failing or
calling module.
4 Enter the name of the failing module
in the problem report or enter the
name of the calling module in the
problem report.
Diagram 2-5 ---------------...
(Step 3) Module DMMPRG DMMIDM DMMIDM Move abend code to problem
report area.
2 Locate the program check
address.
3 Determine failing module
and displacement.
4 Enter failing module name and
displacement in the problem
report or enter the calling
module name and displacement
in the problem report.
5 Move the specified registers to
the prob:em report.
6 Move failing instruction to the
problem report and return. Label Ref Notes
5 Call DMMRMV to move the register
set indicated by the pointer passed
in register 1. It can be one of the
following: general registers BALSAVE registers FREESAVE registers SAVEAREA registers LOKSAVE registers
MODREAL SWTSAVE registers
MODPRGCK 6 Move the failing instruction to the
problem report and return to the
MODABND user prompting routine.
MODPAGE
MODPRGCK MODGOOD Diagram 2-7. Program Check Routine (DMMPRG) 32 IBM VM/370 Service Routines Program Logic
Problem
Report Area
Abend Code SHARECON VMMOD1 VMDISP1 VMCALLER SHARECON TEXTl
TEXT2
TEXT3
TEXT4
TEXT5 Module Label DMMRMV DMMPRG PTGINSTR PRGMORCD
Ref
Input I DUMPINREC DMPABEND CPALKUP r-::\ Notes
1 Move the abend code from the
DMPABEND field of the dump
information record (record 2) into the
problem report area.
2 Compare the prefix of the abend code
to the entries in the abend look up
table; in this table an entry exists for every know(1 abend and it includes a prefix code followed by a sub-
routine address.
3 When the appropriate subroutine is
located, move the predetermined data
to the problem report.
Note: The amount and type of data
extracted will vary according to the
abend, but will generally fall into one
of the following categories: TEXT 1 through TEXT 5 contain
the IOBLOK. TEXT 1 through TEXT 5 contain
an information type entry; for
example, THE CLOCK IS IN ERROR OR NOT OPERATIONAL. TEXT 1 through TEXT 5 contain
one of the six register save areas
(reserved); VMDISP is the
displacement within the caller; and VMCALLER is the module calling
the failing module.
The last category requires calling DMMIDM and DMMRMV. (See
Diagram 2-7, Steps 4 and 5.) Call the user prompting routine. I From Processing
Diagram 2-5 ----------------, (Step 3)
Module DMMCPA I DMMINI Move abend code to problem
report area.
2 Find abend related subroutine
using abend code and look-up table. 3 Move abend related data to
problem report area and
return.
Label Ref Notes CPACNTIN I I CPAGETAD CPACALL To
Diagram 2-5
(Step 4)
Output I SHARECON VMFAIL Variable I Data U Module Label Ref I I Diagra. 2-8. Coded Abend Routine (D!"CPA, Chapter 2. IPCS--The Interactive Proble. Centrol Systea 33
Previous Page Next Page