This chapter describes the format, usage, and qualifiers of the System Dump Analyzer (SDA) utility.
The System Dump Analyzer (SDA) utility helps determine the causes of system failures. This utility is also useful for examining the running system.
collection-file-nameName of the file that contains the file ID translation data or unwind data to be used by SDA.
device-nameThe device containing the system dump.
filespecName of the file(s) that contain the dump you want to analyze.
If filespec is not specified in an ANALYZE/CRASH_DUMP command, the default is the highest version of SYS$SYSTEM:SYSDUMP.DMP. If this file does not exist or cannot be opened, SDA prompts you for a file name. If any field of filespec is provided, the remaining fields default to the highest version of SYSDUMP.DMP in your default directory.
filespec can be a comma-separated list of files, including wildcards, where all the files contain Partial Dump Copies from the same original dump. See Section 2.2.3 for a description of Partial Dump Copies. The following restrictions apply when multiple files are specified:
- Files are opened in the order they are specified.
- The file that contains System Page Tables (section PT) must be the first file opened. This is the Primary dump file.
- If using a wildcard to specify file names, the primary dump file must be the first file to match the wildcard.
- The files specified must be part of the same original crash dump.
- If any section of the dump is found in multiple input files, SDA issues a warning, but continues.
- If the file or unwind data collection is in a separate file, it must have the same name and location as the primary dump file, with file type .COLLECT, or must be specified using the /COLLECTION qualifier.
- The files specified must either be all compressed or all uncompressed. They cannot be mixed.
You cannot specify filespec for ANALYZE/SYSTEM.
system-symbol-tableThe system symbol table used by SDA.
The /CRASH_DUMP and /SYSTEM qualifiers (described in this chapter) specify whether the object of an SDA session is a crash dump or a running system. Additional qualifiers used with these help to create the environment of an SDA session. The /SSLOG qualifier specifies that data be collected by the System Service Logging utility, which is documented in Chapter 14./COLLECTION
The only additional qualifiers that can be used when invoking ANALYZE/SYSTEM are /LOG and /SYMBOL. See Chapter 14 for details of additional qualifiers that can be used when invoking ANALYZE/SSLOG. The following table shows which combinations of additional qualifiers can be used together when invoking ANALYZE/CRASH_DUMP:
/OVERRIDE /RELEASE /SHADOW /SYMBOL /COLLECTION No No Yes Yes /OVERRIDE -- No Yes See note /RELEASE -- -- No See note /SHADOW -- -- -- Yes
/LOG can be used with any valid combination of qualifiers. /SYMBOL is ignored if it is specified with /OVERRIDE or /RELEASE.
The qualifiers are described on the following pages.
By default, the System Dump Analyzer is automatically invoked when you reboot the system after a system failure.
To analyze a system dump interactively, invoke SDA by issuing the following command:
If you do not specify filespec, and SYS$SYSTEM:SYSDUMP.DMP does not exist or cannot be opened, SDA prompts you for a file name.
$ ANALYZE/CRASH_DUMP filespec
To analyze a crash dump, your process must have the privileges necessary for reading the dump file. This usually requires system privilege (SYSPRV), but your system manager can, if necessary, allow less privileged processes to read the dump files. Your process needs change-mode-to-kernel (CMKRNL) privilege to release page file dump blocks, whether you use the /RELEASE qualifier or the SDA COPY command.
Invoke SDA to analyze a running system by issuing the following command:
To examine a running system, your process must have change-mode-to-kernel (CMKRNL) privilege. Your process must also have the map-by-PFN privilege (PFNMAP) to access memory by physical address on a running system. You cannot specify filespec when using the /SYSTEM qualifier.
To send all output from SDA to a file, use the SDA command SET OUTPUT, specifying the name of the output file. The file produced is 132 columns wide and is formatted for output to a printer. To later redirect the output to your terminal, use the following command:
SDA> SET OUTPUT SYS$OUTPUT
To send a copy of all the commands you type and a copy of all the output those commands produce to a file, use the SDA command SET LOG, specifying the name of the log file. The file produced is 132 columns wide and is formatted for output to a printer.
To exit from SDA, use the EXIT command. Note that the EXIT command also causes SDA to exit from display mode. Thus, if SDA is in display mode, you must use the EXIT command twice: once to exit from display mode, and a second time to exit from SDA. See Section 2.6.2 for a description of display mode.
Valid for Alpha and Integrity server systems only.
Indicates to SDA that the file ID translation data or unwind data is to be found in a separate file.
/COLLECTION = collection-file-name
At least one field of the collection file name must be specified. Other fields default to the highest generation of the same filename and location as the dump file, with a file type of .COLLECT.
SDA can provide additional information when analyzing a dump if a collection has been made of file identification translation data (on both Alpha and Integrity servers) and of unwind data (on Integrity servers only). This data is usually saved when the dump file is copied using the SDA COPY/COLLECT command, but it can be saved to a separate file using the COLLECT/SAVE command.
By default, COLLECT/SAVE creates a .COLLECT file with the same name and in the same directory as the dump file. A subsequent ANALYZE/CRASH_DUMP command automatically uses this file. If the collection file is in a different location or if the collection previously appended to the dump file is incomplete (for example, if a disk was not mounted at the time of the SDA COPY), you can use the /COLLECTION qualifier to specify an alternate collection file.
$ ANALYZE/CRASH_DUMP SYS$SYSTEM:SYSDUMP.DMP ... SDA> COLLECT/SAVE=SYS$LOGIN:NEWCOLL.COLLECT SDA> EXIT $ ANALYZE/CRASH_DUMP SYS$SYSTEM:SYSDUMP.DMP /COLLECTION=SYS$LOGIN:NEWCOLL ...
These commands show the creation of a collection file, followed by an analysis of the dump using the collection file.
Invokes SDA to analyze the specified dump file.
filespecName of the file that contains the dump you want to analyze. If no filespec is given on an ANALYZE/CRASH_DUMP command, the default is the highest version of SYS$SYSTEM:SYSDUMP.DMP. If this file does not exist, SDA prompts you for a file name. If any field of filespec is given, the remaining fields default to the highest version of SYSDUMP.DMP in your default directory.
See Chapter 2, Section 2.3 for additional information on crash dump analysis. You cannot specify the /SYSTEM qualifier when you include the /CRASH_DUMP qualifier in the ANALYZE command.
$ ANALYZE/CRASH_DUMP SYS$SYSTEM:SYSDUMP.DMP $ ANALYZE/CRASH SYS$SYSTEM
These commands invoke SDA to analyze the crash dump stored in SYS$SYSTEM:SYSDUMP.DMP.
$ ANALYZE/CRASH SYS$SYSTEM:PAGEFILE.SYS
This command invokes SDA to analyze a crash dump stored in the system page file.
Causes SDA to display the names of the files opened because SDA initializes itself.
SDA displays the names of the files opened because SDA initializes itself. Note that this does not affect the behavior of commands within SDA such as READ, but only files opened when SDA is initialized.
/LOG can be used on ANALYZE /CRASH_DUMP and ANALYZE /SYSTEM.
$ ANALYZE/CRASH_DUMP /LOG T* %SDA-I-OPENED, opened USER$:[SYSMGR]T1.DMP;1 as dump file #1 %SDA-I-OPENED, opened SYS$COMMON:[SYS$LDR]SYS$BASE_IMAGE.EXE;1 as symbol file %SDA-I-OPENED, opened USER$:[SYSMGR]T2.DMP;1 as dump file #2 OpenVMS system dump analyzer ...analyzing an I64 compressed selective memory dump... %SDA-I-OPENED, opened SYS$COMMON:[SYS$LDR]REQSYSDEF.STB;1 as symbol file Dump taken on 14-DEC-2009 17:16:31.35 using version XC6G-J2I SSRVEXCEPT, Unexpected system service exception $ SDA>
This example shows the use of the /LOG qualifier to identify the set of files being used by SDA.
When used with the /CRASH_DUMP qualifier, invokes SDA to analyze only the structure of the specified dump file when a corruption or other problem prevents normal invocation of SDA with the ANALYZE/CRASH_DUMP command.
filespecName of the crash dump file to be analyzed. The default file specification is:SYS$DISK:[default-dir]SYSDUMP.DMPSYS$DISK and [default-dir] represent the disk and directory specified in your last SET DEFAULT command. If you do not specify filespec, and SYS$SYSTEM:SYSDUMP.DMP does not exist or cannot be opened, SDA prompts you for it.
See Chapter 2, Section 2.3 for additional information on crash dump analysis. Note that when SDA is invoked with /OVERRIDE, not all the commands in Chapter 2, Section 2.3 can be used. Commands that can be used are as follows:
- Output control commands such as SET OUTPUT and SET LOG
- Dump file related commands such as SHOW DUMP and CLUE ERRLOG
Commands that cannot be used are as follows:
- Commands that access memory addresses within the dump file such as EXAMINE and SHOW SUMMARY
Also, the /RELEASE qualifier cannot be used when you include the /OVERRIDE qualifier in the ANALYZE/CRASH_DUMP command
When /OVERRIDE is used, the SDA command prompt is SDA>>.
$ ANALYZE/CRASH_DUMP/OVERRIDE SYS$SYSTEM:SYSDUMP.DMP $ ANALYZE/CRASH/OVERRIDE SYS$SYSTEM
These commands invoke SDA to analyze the crash dump stored in SYS$SYSTEM:SYSDUMP.DMP.
Invokes SDA to release those blocks in the specified system page file occupied by a crash dump.
Requires CMKRNL (change-mode-to-kernel) privilege.
filespecName of the system page file (SYS$SYSTEM:PAGEFILE.SYS). Because the default file specification is SYS$DISK:[default-dir]SYSDUMP.DMP, you must identify the page file explicitly. SYS$DISK and [default-dir] represent the disk and directory specified in your last DCL command SET DEFAULT.
If you do not specify filespec, and SYS$SYSTEM:SYSDUMP.DMP does not exist or cannot be opened, SDA prompts you for it. Note that if you do not specify filespec, and SYS$SYSTEM:SYSDUMP.DMP exists and can be opened, SDA will report an error because this is not the primary page file.
Use the /RELEASE qualifier to release from the system page file those blocks occupied by a crash dump. When invoked with the /RELEASE qualifier, SDA immediately deletes the dump from the page file and allows no opportunity to analyze its contents.
When you specify the /RELEASE qualifier in the ANALYZE command, do the following:
- Use the /CRASH_DUMP qualifier.
- Include the name of the system page file (SYS$SYSTEM:PAGEFILE.SYS) as the filespec.
If you do not specify the system page file or the specified page file does not contain a dump, SDA generates the following messages:
%SDA-E-BLKSNRLSD, no dump blocks in page file to release, or not page file %SDA-E-NOTPAGFIL, specified file is not the page file
You cannot specify the /OVERRIDE or /SHADOW_MEMBER qualifier when you include the /RELEASE qualifier in the ANALYZE/CRASH_DUMP command.
$ ANALYZE/CRASH_DUMP/RELEASE SYS$SYSTEM:PAGEFILE.SYS $ ANALYZE/CRASH/RELEASE PAGEFILE.SYS
These commands invoke SDA to release to the page file those blocks in SYS$SYSTEM:PAGEFILE.SYS occupied by a crash dump.
Valid for Alpha and Integrity server systems only.
Specifies which member of a shadow set contains the system dump to be analyzed, or allows the user to determine what system dumps have been written to the members of the shadow set.
If the system disk is a shadow set, a system dump is written to only one member of the shadow set (usually the master member at the time the dump is written). By default, if the filespec translates to a file on a shadow set, SDA reads the dump only from the master member. If at analysis time, the master member is different from where the dump was written, the /SHADOW_MEMBER qualifier allows the user to choose the member from which the dump is to be read.
If the correct member is not known, the /SHADOW_MEMBER qualifier may be specified without a device name. SDA will display a one-line summary of the most recent dump written to each member and then prompt the user to determine which member to use. The prompt is:
Shadow set action?
The possible responses are:
Command Effect EXIT Aborts the SDA session without analyzing a dump HELP Displays simple help text. See Example 3 below. USE <device_name> Initiates analysis of the system dump located on the specified shadow set member.
The one-line summary for each member consists of the following fields:Member device name
Date and time of system crash
Flags---none, one or more of: Bad_Checksum, ErrorLog_Dump, Not_Saved, Old_Dump
If there is no usable dump on a member, SDA output will an explanatory warning message followed by a line giving the member device name and the message "No system or error log dump found."
Note that SDA cannot distinguish a dump on a shadowed system disk from a dump copied to a shadowed data disk. SDA will therefore always read the dump from a single member of a host-based shadow set. (In an OpenVMS Cluster system with multiple shadowed system disks, one system's system disk will be a data disk on other systems.) This does not affect dumps being read directly from a DOSD disk, since DOSD disks cannot be members of a host-based shadow set.
The /SHADOW_MEMBER qualifier is not useful if the system dump has been written to the primary page file on a shadowed system disk. You cannot specify /RELEASE with /SHADOW_MEMBER.
$ ANALYZE/CRASH_DUMP DSA777:[SYS0.SYSEXE]SYSDUMP.DMP %SDA-I-USEMASTER, accessing dump file via _$31$DKB200:, master member of shadow set _DSA777: OpenVMS (TM) Alpha system dump analyzer ...analyzing a compressed selective memory dump... Dump taken on 12-DEC-2001 08:23:07.80 SSRVEXCEPT, Unexpected system service exception SDA>
This command initiates dump analysis using the master member of the shadow set DSA777 (the default action).
$ ANALYZE/CRASH_DUMP/SHADOW_MEMBER=DKB0 DSA777:[SYS0.SYSEXE]SYSDUMP.DMP OpenVMS (TM) Alpha system dump analyzer ...analyzing a compressed selective memory dump... Dump taken on 12-DEC-2001 08:23:07.80 SSRVEXCEPT, Unexpected system service exception SDA>
This command initiates dump analysis using member device $31$DKB0 of the shadow set DSA777.
$ ANALYZE/CRASH_DUMP/SHADOW_MEMBER DSA8888:[SYS1.SYSEXE]SYSDUMP.DMP _$70$DKA303: INVEXCEPTN 16-NOV-2001 00:00:25.74 MRVP2 X96S-FT1 _$70$DKA202: INCONSTATE 18-NOV-2001 02:08:45.05 MRVP2 X96S-FT1 Shadow set action? HELP Shadow set actions: EXIT exit SDA HELP this display USE <shadow_set_member> proceed using specified shadow set member Shadow set action? USE _$70$DKA303: OpenVMS (TM) Alpha system dump analyzer ...analyzing a compressed selective memory dump... %SDA-W-NOTSAVED, global pages not saved in the dump file Dump taken on 16-NOV-2001 00:00:25.74 INVEXCEPTN, Exception while above ASTDEL SDA> EXIT
This command displays the dumps to be found on the members of shadow set DSA8888:[SYS1.SYSEXE]SYSDUMP.DMP and then begins analysis of the dump written to device _$70$DKA303.
Displays data collected by the System Service Logging Utility (SSLOG). For more information about this and associated commands, see Chapter 14, System Service Logging.
Specifies an alternate system symbol table for SDA to use.
/SYMBOL = system-symbol-table
File specification of the OpenVMS Alpha SDA system symbol table required by SDA to analyze a system dump or running system. The specified system-symbol-table must contain those symbols required by SDA to find certain locations in the executive image.
If you do not specify the /SYMBOL qualifier, SDA uses SDA$READ_DIR:SYS$BASE_IMAGE.EXE to load system symbols into the SDA symbol table. When you specify the /SYMBOL qualifier, SDA assumes the default disk and directory to be SYS$DISK:[ ], that is, the disk and directory specified in your last DCL command SET DEFAULT. If you specify a file for this parameter that is not a system symbol table, SDA exits with a fatal error.
The /SYMBOL qualifier allows you to specify a system symbol table to load into the SDA symbol table. You can use the /SYMBOL qualifier whether you are analyzing a system dump or a running system. It is not normally necessary to use the /SYMBOL qualifier when analyzing the running system, since the default SYS$BASE_IMAGE.EXE is the one in use in the system. However if SDA$READ_DIR has been redefined during crash dump analysis, then the /SYMBOL qualifier can be used to ensure that the correct base image is found when analyzing the running system.
The /SYMBOL qualifier can be used with the /CRASH_DUMP and /SYSTEM qualifiers. It is ignored when /OVERRIDE or /RELEASE is specified.
$ ANALYZE/CRASH_DUMP/SYMBOL=SDA$READ_DIR:SYS$BASE_IMAGE.EXE SYS$SYSTEM
This command invokes SDA to analyze the crash dump stored in SYS$SYSTEM:SYSDUMP.DMP, using the base image in SDA$READ_DIR.
Invokes SDA to analyze a running system.
Requires CMKRNL (change-mode-to-kernel) privilege. Also requires PFNMAP (map-by-PFN) privilege to access memory by physical address.
See Chapter 2, Section 2.4 for information on how to use SDA to analyze a running system. See Chapter 4 for information on SDA commands.
The only other qualifiers you can specify with /SYSTEM are /LOG and /SYMBOL.
$ ANALYZE/SYSTEM OpenVMS (TM) system analyzer SDA>
This command invokes SDA to analyze the running system.