How to take a Standalone dump (SADMP) of a z/OS system

advertisement
How to take a Standalone dump (SADMP) of a z/OS system running under z/VM
This is an example of how to create a standalone dump of a z/OS system using DASD.
This procedure can be useful in the event that a z/OS IPL hangs and the source of the problem
cannot be determined from the console log; in our case JES2 JCL resolved a system symbol to
point to a non-existent proclib dataset so JES2 couldn’t start tasks and couldn’t tell us why
Before a standalone dump can be taken, console addresses must be determined, standalone
IPLtext generated to a DASD volume, and a dump output DASD dataset formatted. The IPLtext
program volume must be accessible by the target z/OS image and cannot be a z/OS IPL volume.
The dump output dataset must also be accessible and must have enough space to hold whatever
is dumped. This example uses 1111 cylinders of a 3390 volume for 830 MBytes which was
sufficient for a basic z/OS system dump.
NOTE: The TSO ISMF utility can be used to show a list of volumes and available space.
First determine the console addresses, generate the standalone dump (SADMP) IPLtext and
format the dump output dataset:
The z/OS system used in this example has a VM user name of ATSZOS1.
To determine candidate console addresses, logon to VM as the z/OS image user. If z/OS is
running, use the PA1 key to get into CP mode.
Issue the command:
cp q graph
CP responds with graphic terminal data like the following:
00: GRAF 01A0 NOT DIALED SUBCHANNEL = 0019
00: GRAF 01A1 NOT DIALED SUBCHANNEL = 001A
00: GRAF 01A3 NOT DIALED SUBCHANNEL = 001B
00: GRAF 01A4 NOT DIALED SUBCHANNEL = 001C
From this output console addresses 01A0, 01A1, 01A3 AND 01A4 will be specified as SADMP
consoles when generating the IPLtext.
The SADMP IPLTEXT is generated with the utility program, AMDSAOSG, and the dump output
dataset can be formatted with the AMDSADDD REXX exec or the IPCS SADMP dump data set
utility. We will create the SADMP IPLTEXT on volume ZO2RS2, and allocate & format the dump
output dataset to be 1111 cylinders on an empty 3390 volume, DMTH01, using AMDSADDD. The
device unit addresses are needed.
From a z/OS console, display the device Units for the standalone dump IPL program volume,
ZO2RS2, and the dump output dataset volume, DMTH01.
D U,VOL=ZO2RS2
IEE457I 18.33.46 UNIT STATUS 966
UNIT TYPE STATUS
VOLSER
C336 3390 A
ZO2RS2
VOLSTATE
PRIV/RSDNT
D U,VOL=DMTH01
IEE457I 18.13.59 UNIT STATUS 859
UNIT TYPE STATUS
VOLSER
C51D 3390 O
DMTH01
VOLSTATE
PRIV/RSDNT
© Copyright IBM Corporation, 2008
1
Locate the program, AMDSAOSG, and the REXX exec, AMDSADDD. You can check if these
members are in LNKLST or the TSO logon proc by issuing the TSO commands:
ISRDDN;LINKLIST;M AMDSAOSG
ISRDDN;M AMDSADDD
If the members are not found, use SMP/E to locate the target libraries.
Generate the standalone dump (SADMP) IPL program; example:
//SADMPGEN JOB (0),'Woe S. Me',MSGLEVEL=(1,1),REGION=6072K,
//
CLASS=B,COND=(8,LT),MSGCLASS=O,TIME=1440,USER=&SYSUID
/*JOBPARM LINES=9999
//*
//* Delete any existing old SADUMP IPL pgm dataset from ZO2RS2
//*
//SADMPDEL EXEC PGM=IEHPROGM
//SYSPRINT DD SYSOUT=*
//DD1
DD UNIT=SYSDA,VOL=SER=ZO2RS2,DISP=OLD
//SYSIN
DD *
SCRATCH
DSNAME=SYS1.PAGEDUMP.VZO2RS2,PURGE,
+
VOL=3390=ZO2RS2
/*
//*
//* Create SADUMP IPL program
//*
//SADMPGN EXEC PGM=AMDSAOSG
//*STEPLIB DD
DISP=SHR,DSN= If needed
//SYSLIB
DD
DSN=SYS1.MACLIB,DISP=SHR
//
DD
DSN=SYS1.MODGEN,DISP=SHR
//GENPRINT DD
SYSOUT=*
//GENPARMS DD
*
AMDSADMP IPL=D3390,VOLSER=ZO2RS2,
X
ULABEL=NOPURGE,
X
CONSOLE=((1A0,3278),(1A1,3278),(1A3,3278),(1A4,3278)),
X
SYSUT=SYSDA,
X
OUTPUT=(DC51D,SYS1.SADMP),
X
MSG=ALL,
X
MINASID=ALL,
X
REUSEDS=ALWAYS,
X
DDSPROMPT=NO
END
/*
Note: specify console (graphic device) addresses that are defined in VM for the z/OS user other
than the z/OS master console.
If IPL text already exists on the SADMP IPL volume, reply U to the overlay confirmation message
when the SADMP gen job runs.
2
© Copyright IBM Corporation, 2008
*nnnn ICK21836D IPL TEXT EXISTS ON ZO2RS2. REPLY U TO OVERLAY, ELSE
T
Allocate the SADMP output datset:
//SADMPALO JOB (0),'Woe S. Me',MSGLEVEL=(1,1),REGION=6072K,
//
CLASS=B,COND=(4,LT),MSGCLASS=O,TIME=1440,USER=&SYSUID
/*JOBPARM LINES=9999
//*
//* Delete any existing standalone SADMP output dataset
//*
//DELSADMP EXEC PGM=IEFBR14
//SYSPRINT DD SYSOUT=*
//DD1
DD VOL=SER=DMTH01,DSN=SYS1.SADMP,
//
UNIT=SYSDA,SPACE=(TRK,0),DISP=(MOD,DELETE)
//*
//* Create standalone dump output dataset
//*
//BLDSADMP EXEC PGM=IKJEFT01
//SYSTSPRT
DD SYSOUT=*
//SYSEXEC
DD DISP=SHR,DSN=SYS1.COMBINED.ISPFCLIB
//SYSTSIN
DD *
EX 'SYS1.COMBINED.ISPFCLIB(AMDSADDD)' +
'DEFINE DMTH01(SYS1.SADMP) 3390 1111 N'
/*
*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*
To perform a standalone dump:
From the VM control userid issue this command,
Note: the VM control userid is the VM userid from which you IPL z/OS
cp stop
The system may respond with READY depending on the CP state.
From the VM control userid issue this command,
cp store status
The system will respond with
Store complete.
From the VM control userid issue this command to IPL from the standalone dump
program volume that was created earlier,
cp i C336
The system may respond with READY.
From the VM control userid issue this command,
cp set pswtrans all
cp d psw
or
cp d pswg all
© Copyright IBM Corporation, 2008
3
The system should respond with
ATSZOS1 : PSW = 070A0000 003E0000
The x'003E0000' indicates SAD is waiting for a terminal.
On another 3270 terminal at the VM logon screen dial the userid of the system
running z/OS SAD. For example, issue the command,
DIAL ATSZOS1
The system should respond with one of the console addresses specified in the
AMDSADMP gen macro.
DIALED TO ATSZOS1
01A0
Press the enter key to make SAD recognize the terminal.
The system will respond with
AMD083I AMDSADMP: STAND-ALONE DUMP INITIALIZED. IPLDEV: C336 LOADP:
AMD001A SPECIFY OUTPUT DEVICE ADDRESS (1)
Respond with the Enter key
AMD094I C51D DMTH01 SYS1.SADMP
IS VALID, HOWEVER, IT MAY ALREADY CONTAIN DATA FROM A
PREVIOUS DUMP.
THE INSTALLATION CHOSE TO ALWAYS REUSE THE DUMP DATA SET.
AMD101I OUTPUT DEVICE: C51D DMTH01 SYS1.SADMP
SENSE ID DATA: FF 3990 E9 3390 0A BLOCKSIZE: 24,960
AMD011A TITLE=
Enter the SADMP Title, e.g. HFD$ IPL Standalone dump
AMD005I DUMPING
AMD005I DUMPING
AMD005I DUMPING
AMD005I DUMPING
AMD005I DUMPING
AMD005I DUMPING
AMD005I DUMPING
AMD108I DUMPING
COMPLETED.
AMD108I DUMPING
COMPLETED.
AMD108I DUMPING
COMPLETED.
AMD029D REPLY W
OF
OF
OF
OF
OF
OF
OF
OF
REAL STORAGE NOW IN PROGRESS.
PAGE FRAME TABLE COMPLETED.
REAL STORAGE FOR MINIMAL
ASIDS
REAL STORAGE FOR SUMMARY
ASIDS
REAL STORAGE FOR SWAPPED-IN ASIDS
IN-USE REAL STORAGE COMPLETED.
REAL STORAGE SUSPENDED.
AUXILIARY STORAGE FOR MINIMAL
COMPLETED.
COMPLETED.
COMPLETED.
ASIDS
OF AUXILIARY STORAGE FOR SUMMARY
ASIDS
OF AUXILIARY STORAGE FOR SWAPPED-IN
ASIDS
TO WAIT AFTER NEXT FULL SCREEN, ELSE REPLY N; REPLY=
Enter, N
The system will respond:
AMD108I DUMPING OF AUXILIARY STORAGE FOR SWAPPED-OUT ASIDS
COMPLETED.
AMD056I DUMPING OF AUXILIARY STORAGE COMPLETED.
AMD005I DUMPING OF REAL STORAGE RESUMED.
4
© Copyright IBM Corporation, 2008
AMD095I REAL DUMP
4% COMPLETED. TOTAL MEGABYTES DUMPED:
AMD005I DUMPING OF AVAILABLE REAL STORAGE COMPLETED.
AMD005I DUMPING OF REAL STORAGE COMPLETED.
AMD104I
DEVICE VOLUME USED
DATA SET NAME
1
C51D DMTH01 44%
SYS1.SADMP
90
On the VM control userid watch for the following message which indicates the standalone dump is complete.
01: HCPGSP2630I The virtual machine is placed in CP mode due to a SIGP stop and
store status from CPU 00.
00: HCPGIR450W CP entered; disabled wait PSW 00020000 00000000 00000000
00410000
The dump is complete. Log the userid running OS/390 SAD off the VM system with
the following command.
cp logoff
The second VM session will also terminate.
Terse the dump output:
//SADMPTRS JOB (0),'Woe S. Me',CLASS=B,COND=(4,LT),
//
MSGCLASS=O,MSGLEVEL=(1,1),REGION=6072K,
//
TIME=1440,NOTIFY=&SYSUID
/*JOBPARM LINES=9999
//CLEANOLD EXEC PGM=IEFBR14
//OUTFILE DD DISP=(MOD,DELETE),DSN=SYS1.SADMP.TERSED,
//
DCB=(DSORG=PS,RECFM=FB,LRECL=80),UNIT=SYSALLDA,SPACE=(TRK,(0))
//UNPAKPF1 EXEC PGM=AMATERSE,PARM='PACK'
//SYSPRINT DD SYSOUT=*,DCB=(LRECL=133,BLKSIZE=12901,RECFM=FBA)
//SYSUT1 DD DISP=SHR,DSN=SYS1.SADMP,UNIT=3390,VOL=SER=DMTH01
//SYSUT2 DD DISP=(NEW,CATLG),DSN=SYS1.SADMP.TERSED,
//
DCB=(DSORG=PS,RECFM=FB,LRECL=1024,BLKSIZE=10240),
//
UNIT=SYSALLDA,VOL=SER=HSL735,SPACE=(TRK,(900,900),RLSE)
Send the dump to support level 2:
Send your documentation using the PUTDOC tool available at
techsupport.services.ibm.com/server/nav/zSeries/putdoc/putdoc.html
OR
1.Compress your dataset using AMATERSE.
2.FTP to testcase.boulder.ibm.com (or 207.25.253.31)
USERID:anonymous and PASSWORD:your complete e-mail address.
3.Specify BINary mode for transfer of the dataset.
4.PUT the file in the toibm/mvs directory using your PMR number
as part of the name: ppppp.bbb.ccc.short.desc?.TRS
sample: 12345.999.000.dumpa.trs (pmr.branch.country - U.S.=000)
When the transfer is complete, ensure the PMR is updated with:
- The file name and original MVS Dataset attributes, including
LRECL, RECFM, BLKSIZE, and Primary and Secondary space.
© Copyright IBM Corporation, 2008
5
References:
GA22-7589-12, z/OS MVS Diagnosis: Tools and Service Aids
SC24-6081-05, z/VM V5R3.0 CP Commands and Utilities Reference
http://dtsc.dfw.ibm.com/MVSDS/'HTTPD2.DSN01.PUBLIC.HTML(HBMETSAD)'
Art Eisenhour
IBM Americas Advanced Technical Support
arteisen@us.ibm.com
6
© Copyright IBM Corporation, 2008
Download