|
To determine the failing media manager function, use the following
procedure to locate the calling program and identify the type of call.
- Use the dump obtained earlier for either the abend or wait/loop
type-of-failure.
- Register 13 at the time of the abend points to the save area of
the media manager's caller. Standard save area conventions are followed.
Linkage to media manager is by registers 14 and 15. Parameters are
passed in registers 0, 1, and 2. In DFSMS, media manager uses the
BAKR instruction, and the registers are saved on the linkage stack.
The registers are not saved in the standard storage area. It is possible
to format the linkage stack with IPCS.
- Locate in the dump the save area pointed to by register 13. Locate
register 14 in the save area; it points to the calling program's next
sequential instruction following the instruction that called media
manager.
- Locate in the dump the instruction in the calling program that
passed control to media manager. The instruction is similar to the
one shown:
Machine Assembler
Language Language
Instruction Instruction Usage
440E044A EX 0,1098(14) (Common for all linkages)
- Trace backward from that instruction, looking for the following
sequence of linkage instructions:
Machine Assembler
Language Language
Instruction Instruction
58E00010 L 14,16(0)
58F0E148 L 15,328(,14)
58F0F010 L 15,16(,15)
- One of the instructions shown in Table 1 follows
this sequence of instructions. It identifies the media manager function
invoked by the caller.
Table 1. Identifying the Media Manager Function InvokedMachine Language Instruction |
Assembler Language Instruction |
Modifier (Function) keyword |
---|
58F0F008 |
L 15,8(,15) |
INIT |
58F0F00C |
L 15,12(,15) |
RDWR |
58F0F010 |
L 15,16(,15) |
FMTWR |
58F0F014 |
L 15,20(,15) |
PFMT |
58F0F018 |
L 15,24(,15) |
CNVT (RBA TO CCHHR) |
58F0F01C |
L 15,28(,15) |
CNVT (CCHHR TO RBA) |
58F0F020 |
L 15,32(,15) |
SRV |
58F0F028 |
L 15,40(,15) |
COMMIT, DISCARD |
58F0F030 |
L 15,48(,15) |
WRITE |
58F0F034 |
L 15,52(,15) |
PIO |
58F0F038 |
L 15,56(,15) |
PIOPG |
58F0F03C |
L 15,60(,15) |
PIOC |
Tip: Because I/O and program processing are asynchronous,
the most recent program activity might not involve a media manager
call. However, by looking for these linkage instructions, you can
locate the most recent media manager calls to the INIT, CNVT, or SRV
functions.
- Specify the media manager function as the modifier keyword.
Example: If
the function is CNVT, specify the keyword as CNVT.
- If the function is neither INIT, CNVT, nor SRV, continue with
this process. Otherwise, see Table 1.
- The function must be either RDWR, FMTWR, or PFMT. Continue with
this procedure.
- If functional recovery routines are in effect and a program check
or abend occurs either in the media manager or in an exit routine
from the media manager, the system automatically directs a summary
dump of media manager control blocks to the SYS1.DUMPxx data set.
When printing a dump from a SYS1.DUMPxx data set, print at least
the summary dump portion of the dump, using the IPCS dump formatter
(see z/OS MVS IPCS User's Guide for
details on using this service). If ICYFRR issued the SDUMP, use the
sample media manager dump in Media Manager diagnostic aids for
the following steps:
- Locate in the dump the media manager process block (MMPB). It
is near the beginning of the summary dump, and the acronym MMPB in
EBCDIC representation appears at offset 0 in the MMPB itself.
If
you cannot locate the media manager process block this way, use the
following procedure:
- Locate the MMVT by using the CVTMMVT field in the CVT and look
for the first storage vector MMSV by using the eye catcher ICYMMSV1.
See the sample media manager dump in Media Manager diagnostic aids.
- Each two-word MMSV entry following the eye catcher consists of
a lockword (unused or caller's ASID) followed by a pointer to the
media manager storage block containing the MMPB(s). Multiple MMPBs
exist, some of which are active and some inactive; to find the one
that might be related to the failure, examine the MMPASID and MMPBPARM
fields for the ASID and input parameters, respectively.
- The MMPFLG2 field in the MMPB is a 1-byte field that identifies
which media manager function was in control.
MMPFLG2 Value |
Modifier (Function) Keyword |
---|
X'08' |
PFMT |
X'10' |
FMTWR |
Example: If the function is PFMT, specify the
modifier keyword as PFMT.
If neither value is present, the
function, by default, is RDWR.
- See Table 1.
|