1 Using_CLUE_with_DOSD DOSD (Dump Off System Disk) allows you to write the system dump file to a device other than the system disk. For SDA CLUE to be able to correctly find the dump file to be analyzed after a system crash, you need to perform the following steps: 1. Modify the command procedure SYS$MANAGER:SYCONFIG.COM to add the system logical name CLUE$DOSD_DEVICE to point to the device where the dump file resides. You need to supply only the physical or logical device name without a file specification. 2. Modify the command procedure SYS$MANAGER:SYCONFIG.COM to mount systemwide the device where the dump file resides. Otherwise, SDA CLUE cannot access and analyze the dump file. In the following example, the dump file has been placed on device $3$DUA25, which has the label DMP$DEV. You need to add the following commands to SYS$MANAGER:SYCONFIG.COM: $ MOUNT/SYSTEM/NOASSIST $3$DUA25: DMP$DEV DMP$DEV $ DEFINE/SYSTEM CLUE$DOSD_DEVICE DMP$DEV 2 CALL_FRAME Valid for Alpha only. Displays key information, such as the PC of the caller, from the active call frames at the time of the crash. Format CLUE CALL_FRAME [/CPU [cpu-id|ALL] |/PROCESS [/ADDRESS=n|INDEX=n |/IDENTIFICATION=n|process-name|ALL]] 3 Parameters ALL When used with /CPU, it requests information about all CPUs in the system. When used with /PROCESS, it requests information about all processes that exist in the system. cpu-id When used with /CPU, it gives the number of the CPU for which information is to be displayed. Use of the cpu-id parameter causes the CLUE CALL_FRAME command to perform an implicit SET CPU command, making the indicated CPU the current CPU for subsequent SDA commands. process-name When used with /PROCESS, it gives the name of the process for which information is to be displayed. Use of the process-name parameter, the /ADDRESS qualifier, the /INDEX qualifier, or the /IDENTIFICATION qualifier causes the CLUE CALL_FRAME command to perform an implicit SET PROCESS command, making the indicated process the current process for subsequent SDA commands. You can determine the names of the processes in the system by issuing a SHOW SUMMARY command. The process-name can contain up to 15 letters and numerals, including the underscore (_) and dollar sign ($). If it contains any other characters, you must enclose the process-name in quotation marks (" "). 3 Qualifiers /ADDRESS /ADDRESS=n Specifies the PCB address of the desired process when used with CLUE CALL_FRAME/PROCESS. /CPU /CPU [cpu-id|ALL] Indicates that the call frame for a CPU is required. Specify the CPU by its number or use ALL to indicate all CPUs. /IDENTIFICATION /IDENTIFICATION=n Specifies the identification of the desired process when used with CLUE CALL_FRAME/PROCESS. /INDEX /INDEX=n Specifies the index of the desired process when used with CLUE CALL_FRAME/PROCESS. /PROCESS /PROCESS [process-name|ALL] Indicates that the call frame for a process is required. The process should be specified with either one of the qualifiers /ADDRESS, /IDENTIFICATION, or /INDEX, or by its name, or by using ALL to indicate all processes. 2 CLEANUP Performs housekeeping operations to conserve disk space. If the CLUE$COLLECT:CLUE$*.LIS files occupy more space than the logical CLUE$MAX_BLOCKS allows (the default is 5,000 blocks), the oldest files are deleted until the threshold is reached. Format CLUE CLEANUP 2 CONFIG Displays the system, memory, and device configurations. Format CLUE CONFIG 3 Qualifiers /ADAPTER Displays only the part of the system configuration that contains information about the adapters and devices on the system. /CPU Displays only the part of the system configuration that contains information about the CPUs. /MEMORY Displays only the part of the system configuration that contains information about the layout of physical memory. 2 CRASH Displays a crash dump summary, which includes the following items: o Bugcheck type o Current process and image o Failing PC and PS o Executive image section name and offset o General registers o Failing instructions o Exception frame, signal and mechanism arrays (if available) o CPU state information (spinlock related bugchecks only) Upon system startup after a system failure, this summary is automatically captured and stored in the file CLUE$nodename_ ddmmyy_hhmm.LIS. Begin your analysis of the crash dump by examining this summary. Format CLUE CRASH 2 ERRLOG Extracts the error log buffers from the dump file and places them into the binary file called CLUE$ERRLOG.SYS. Format CLUE ERRLOG [/OLD] 3 Qualifier /OLD Dumps the errorlog buffers into a file using the old errorlog format. The default action, if /OLD is not specified, is to dump the errorlog buffers in the common event header format. 3 Description CLUE ERRLOG extracts the error log buffers from the dump file and places them into the binary file called CLUE$ERRLOG.SYS. These buffers contain messages not yet written to the error log file at the time of the failure. When you analyze a failure on the same system on which it occurred, you can run the Error Log utility on the actual error log file to see these error log messages. When analyzing a failure from another system, use the CLUE ERRLOG command to create a file containing the failing system's error log messages just prior to the failure. System failures are often triggered by hardware problems, so determining what, if any, hardware errors occurred prior to the failure can help you troubleshoot a failure. You can define the logical CLUE$ERRLOG to any file specification if you want error log information written to a file other than CLUE$ERRLOG.SYS. NOTE You need at least DECevent V2.9 to analyze the new common event header (CEH) format file. The old format file can be analyzed by ANALYZE/ERROR or any version of DECevent. 2 FRU Outputs the Field Replacement Unit (FRU) table to a file for display by DECevent. Format CLUE FRU 2 HISTORY Updates history file and generates crash dump summary output. Format CLUE HISTORY [/qualifier] 3 Qualifier /OVERRIDE Allows execution of this command even if the dump file has already been analyzed (DMP$V_OLDDUMP bit set). 2 MCHK This command is obsolete. Format CLUE MCHK 2 MEMORY Displays memory- and pool-related information. Format CLUE MEMORY [/qualifier[,...]] 3 Qualifiers /FILES Displays information about page and swap file usage. /FREE Validates and displays dynamic nonpaged free packet list queue. (See also /FULL.) /FULL Ignored except when used with /FREE or /GH. When used with /FREE, the first 16 bytes of each entry on the free packet list is displayed. When used with /GH, a list of the images that use each granularity hint region is displayed. /GH Displays information about the granularity hint regions. (See also /FULL.) /LAYOUT Decodes and displays much of the system virtual address space layout. /LOOKASIDE Validates the lookaside list queue heads and counts the elements for each list. /STATISTIC Displays systemwide performance data such as page fault, I/O, pool, lock manager, MSCP, and file system cache. 2 PROCESS Displays process-related information from the current process context. Format CLUE PROCESS [/qualifier[,...]] 3 Qualifiers /ALL Ignored except when specified with /BUFFER. Displays the buffer objects for all processes (that is, all existing buffer objects). /BUFFER Displays the buffer objects for the current process or for all processes if /ALL is specified. /LAYOUT Displays the process P1 virtual address space layout. /LOGICAL Displays the process logical names and equivalence names, if they can be accessed. /RECALL Displays the DCL recall buffer, if it can be accessed. 2 REGISTER Displays the active register set for the crash CPU. The CLUE REGISTER command is valid only when analyzing crash dumps. Format CLUE REGISTER [/CPU [cpu-id|ALL] |/PROCESS [/ADDRESS=n|INDEX=n |/IDENTIFICATION=n|process-name|ALL]] 3 Parameters ALL When used with /CPU, it requests information about all CPUs in the system. When used with /PROCESS, it requests information about all processes that exist in the system. cpu-id When used with /CPU, it gives the number of the CPU for which information is to be displayed. Use of the cpu-id parameter causes the CLUE REGISTER command to perform an implicit SET CPU command, making the indicated CPU the current CPU for subsequent SDA commands. process-name When used with /PROCESS, it gives the name of the process for which information is to be displayed. Use of the process-name parameter, the /ADDRESS qualifier, the /INDEX qualifier, or the /IDENTIFICATION qualifier causes the CLUE REGISTER command to perform an implicit SET PROCESS command, making the indicated process the current process for subsequent SDA commands. You can determine the names of the processes in the system by issuing a SHOW SUMMARY command. The process-name can contain up to 15 letters and numerals, including the underscore (_) and dollar sign ($). If it contains any other characters, you must enclose the process-name in quotation marks (" "). 3 Qualifiers /ADDRESS /ADDRESS=n Specifies the PCB address of the desired process when used with CLUE REGISTER/PROCESS. /CPU /CPU [cpu-id|ALL] Indicates that the registers for a CPU are required. Specify the CPU by its number or use ALL to indicate all CPUs. /IDENTIFICATION /IDENTIFICATION=n Specifies the identification of the desired process when used with CLUE REGISTER/PROCESS. /INDEX /INDEX=n Specifies the index of the desired process when used with CLUE REGISTER/PROCESS. /PROCESS /PROCESS [process-name|ALL] Indicates that the registers for a process are required. The process should be specified with either one of the qualifiers /ADDRESS, /IDENTIFICATION, or /INDEX, or by its name, or by using ALL to indicate all processes. 2 SCSI Displays information related to SCSI and Fibre Channel. Format CLUE SCSI {/CONNECTION=n |/PORT=n|/REQUEST=n|/SUMMARY} 3 Qualifiers /CONNECTION /CONNECTION=scdt-address Displays information about SCSI connections and decodes the SCSI connection descriptor data structure identified by the SCDT address. /PORT /PORT=spdt-address Displays all or a specific port descriptor identified by its SPDT address. /REQUEST /REQUEST=scdrp-address Displays information about SCSI requests and decodes the SCSI class driver request packet identified by the SCDRP address. /SUMMARY Displays a summary of all SCSI and FC ports and devices and their type and revisions. 2 SG Displays the scatter-gather map. Format CLUE SG [/CRAB=address] 3 Qualifier /CRAB /CRAB=address Displays the ringbuffer for the specified Counted Resource Allocation Block (CRAB). The default action is to display the ringbuffer for all CRABs. 2 STACK On Alpha, CLUE STACK identifies and displays the current stack. On Integrity servers, CLUE STACK only identifies the current stack without displaying it. In the case of a FATALEXCPT, INVEXCEPTN, SSRVEXCEPT, UNXSIGNAL, or PGFIPLHI bugcheck, CLUE STACK tries to decode the whole stack. Use the SDA command SHOW STACK on both Alpha and Integrity servers to display and decode the whole stack for the more common bugcheck types. Format CLUE STACK 2 SYSTEM Displays the contents of the shared logical name tables in the system. Format CLUE SYSTEM /LOGICAL 3 Qualifier /LOGICAL Displays all the shared logical names. 2 VCC Displays virtual I/O cache-related information. NOTE If extended file cache (XFC) is enabled, the CLUE VCC command is disabled. Format CLUE VCC [/qualifier[,...]] 3 Qualifiers /CACHE Decodes and displays the cache lines that are used to correlate the file virtual block numbers (VBNs) with the memory used for caching. Note that the cache itself is not dumped in a selective dump. Use of this qualifier with a selective dump produces the following message: %CLUE-I-VCCNOCAC, Cache space not dumped because DUMPSTYLE is selective /LIMBO Walks through the limbo queue (LRU order) and displays information for the cached file header control blocks (FCBs). /STATISTIC Displays statistical and performance information related to the virtual I/O cache. /VOLUME Decodes and displays the cache volume control blocks (CVCB). 2 XQP Displays XQP-related information. XQP is part of the I/O subsystem. Format CLUE XQP [/qualifier[,...]] 3 Qualifiers /ACTIVE Displays all active XQP processes. (See also /FULL.) /AQB Displays any current I/O request packets (IRPs) waiting at the interlocked queue. /BFRD /BFRD=index Displays the buffer descriptor (BFRD) referenced by the index specified. The index is identical to the hash value. /BFRL /BFRL=index Displays the buffer lock block descriptor (BFRL) referenced by the index specified. The index is identical to the hash value. /BUFFER /BUFFER=(n,m) Displays the BFRDs for a given pool. Specify either 0, 1, 2 or 3, or a combination of these in the parameter list. (See also /FULL.) /CACHE_HEADER Displays the block buffer cache header. /FCB /FCB=address Displays all file header control blocks (FCBs) with a nonzero DIRINDX for a given volume. If no address is specified, the current volume of the current process is used. (See also /FULL.) The address specified can also be either a valid volume control block (VCB), unit control block (UCB), or window control block (WCB) address. /FILE /FILE=address Decodes and displays file header (FCB), window (WCB), and cache information for a given file. The file can be identified by either its FCB or WCB address. /FULL Ignored except when used with certain other qualifiers. When used with /ACTIVE, CLUE displays additional data on the XQP's caller (for Alpha only). When used with /BUFFER or /VALIDATE, CLUE displays additional data on each buffer descriptor. When used with /FCB, CLUE displays all FCBs, including any that are unused. /GLOBAL Displays the global XQP area for a given process. /LBN_HASH /LBN_HASH=lbn Calculates and displays the hash value for a given logical block number (LBN). /LIMBO Searches through the limbo queue and displays FCB information from available, but unused file headers. /LOCK /LOCK=lockbasis Displays all file system serialization, arbitration, and cache locks found for the specified lockbasis. /THREAD /THREAD=n Displays the XQP thread area for a given process. The specified thread number is checked for validity. If no thread number is specified, the current thread is displayed. If no current thread, but only one single thread is in use, then that thread is displayed. If more than one thread exists or an invalid thread number is specified, then a list of currently used threads is displayed. /VALIDATE /VALIDATE=(n,m) Performs certain validation checks on the block buffer cache to detect corruption. Specify 1, 2, 3, 4, or a combination of these in the parameter list. If an inconsistency is found, a minimal error message is displayed. (See also /FULL.)