|
OpenVMS VAX System Dump Analyzer Utility Manual
This SDA session shows the output of the SHOW LOCK command for several
locks. The SHOW RESOURCE command, executed for the last displayed lock,
verifies that the lock is in the resource's granted queue, among many
other locks given concurrent read (CR) access to the resource. (See
Table SDA-21 for a full explanation of the contents of the display of
the SHOW RESOURCE command.)
#2 |
SDA SHOW LOCK/CACHE
Lock database
-------------
Lock id: 6D000032 PID: 00010028 Flags: VALBLK SYNCSTS SYSTEM
Par. id: 01000002 SUBLCKs: 0 NOQUOTA
LKB: 80F67C00 BLKAST: 00000000
PRIORTY: 0000
Granted at PW 00000000-FFFFFFFF
Resource: 00257324 42313146 F11B$s%. Status: NOQUOTA CACHED
Length 10 00000000 00000000 ........
Kernel mode 00000000 00000000 ........
System 00000000 00000000 ........
Local copy
Lock id: 7B00003B PID: 0001000B Flags: VALBLK SYNCSTS SYSTEM
Par. id: 01000002 SUBLCKs: 0 NOQUOTA
LKB: 80F51F80 BLKAST: 00000000
PRIORTY: 0000
Granted at PW 00000000-FFFFFFFF
Resource: 08E97324 42313146 F11B$sé. Status: NOQUOTA CACHED
Length 10 00000000 00000000 ........
Kernel mode 00000000 00000000 ........
System 00000000 00000000 ........
.
.
.
Local copy
|
This example of the SHOW LOCK/CACHE command displays the contents of
cached lock blocks (LKBs).
SHOW LOGS
Displays information about transaction logs currently open for the node.
Format
SHOW LOGS [/qualifier[,...]]
Qualifier
/DISPLAY=(item [,...])
Specifies the type of information to be displayed. The argument to
/DISPLAY can be either a single item or a list. The following items can
be specified.
Item |
Description |
ALL
|
All transaction log control structure information. This is the default
behavior.
|
OPENS
|
Transaction log open requests.
|
READS
|
Transaction log read requests.
|
WRITES
|
Transaction log write requests.
|
Example
|
SDA> SHOW LOGS/DISPLAY=(OPENS, WRITES)
|
The SHOW LOGS command displays the log open request and log write
request information for all open transaction logs for the node.
SHOW PAGE_TABLE
Displays a range of system page table entries, the entire system page
table, or the entire global page table.
Format
SHOW PAGE_TABLE [/qualifier[,...]] [range]
Parameter
range
Range of virtual addresses for which SDA is to display page table
entries. You can express a range using the following format:
m:n
|
Range of virtual addresses from
m to
n
|
m;n
|
Range of virtual addresses starting at
m and continuing for
n bytes
|
Qualifiers
/GLOBAL
Lists the global page table.
/SYSTEM
Lists the system page table.
/ALL
Lists both the global and system page tables. This is the default
behavior of SHOW PAGE_TABLE.
Description
For each virtual address displayed by the SHOW PAGE_TABLE command, the
first six columns of the listing provide the associated page table
entry and describe its location, characteristics, and contents (see
Table SDA-16). SDA obtains this information from the system page table.
If the virtual page has been mapped to a physical page, the last nine
columns of the listing include information from the page frame number
(PFN) database (see Table SDA-17). Otherwise, the section is left blank.
SDA indicates pages are inaccessible by displaying the following
message:
Here, n indicates the number of inaccessible pages.
Table SDA-16 Virtual Page Information in the SHOW PAGE_TABLE Display
Value |
Meaning |
ADDRESS
|
System virtual address that marks the base of the virtual page.
|
SVAPTE
|
System virtual address of the page table entry that maps the virtual
page.
|
PTE
|
Contents of the page table entry, a longword that describes a system
virtual page.
|
Type
|
Type of virtual page. There are the following eight types:
- VALID
Valid page (in main memory).
- TRANS
Transitional page (between main memory and page lists).
- DZERO
Demand-allocated, zero-filled page.
- PGFIL
Page within a paging file.
- STX
Section table's index page.
- GPTX
Index page for a global page table.
- IOPAG
Page in I/O address space.
- NXMEM
Page not represented in physical memory. The page frame number
(PFN) of this page is not mapped by any of the system's memory
controllers. This indicates an error condition.
|
PROT
|
Protection code, derived from bits in the PTE, that designates the type
of access (read or write, or both) granted to processor access modes
(kernel, executive, supervisor, or user).
|
Bits
|
Letters that represent the setting of a bit or a combination of bits in
the PTE. These bits indicate attributes of a page. The following codes
are listed:
- M
Page has been modified.
- L
Page is locked into a working set.
- K
Owner can access the page in kernel mode.
- E
Owner can access the page in executive mode.
- S
Owner can access the page in supervisor mode.
- U
Owner can access the page in user mode.
|
Table SDA-17 Physical Page Information in the SHOW PAGE_TABLE Display
Category |
Meaning |
PAGTYP
|
Type of physical page. One of the following six types:
- PROCESS
Page is part of process space.
- SYSTEM
Page is part of system space.
- GLOBAL
Page is part of a global section.
- PPGTBL
Page is part of a process's page table.
- GPGTBL
Page is part of a global page table.
- GBLWRT
Page is part of a global, writable section.
|
LOC
|
Location of the page within the system. One of the following eight
locations:
- ACTIVE
Page is in a working set.
- MDFYLST
Page is in the modified page list.
- FREELST
Page is in the free page list.
- BADLST
Page is in the bad page list.
- RELPEND
Release of the page is pending.
- RDERROR
Page has had an error during an attempted read operation.
- PAGEOUT
Page is being written into a paging file.
- PAGEIN
Page is being brought into memory from a paging file.
|
STATE
|
Byte that describes the state of the physical page.
|
TYPE
|
Byte that describes the type of virtual page. The types in this column
are the hexadecimal codes that stand for the page types that appear in
column PAGTYP of this display, described previously.
|
REFCOUNT
|
Count of the processes that are referencing this PFN. If the value of
REFCOUNT is nonzero, the page is used in at least one working set. If
the value is zero, the page is not used in any working set.
|
BAK
|
Address of the backing store; location on a disk device to which pages
can be written.
|
SVAPTE
|
Virtual address associated with this page frame. The two SVAPTEs
indicate a valid link between physical and virtual address space.
|
FLINK
|
Forward link within PFN database that points to the next virtual page.
This longword also acts as the count of the number of processes that
are sharing this global section.
|
BLINK
|
Backward link within PFN database. Also acts as an index into the
working set list.
|
Example
|
SDA>SHOW PAGE_TABLE
System page table
-----------------
ADDRESS SVAPTE PTE TYPE PROT BITS PAGTYP LOC STATE TYPE REFCNT BAK SVAPTE FLINK BLINK
.
.
.
8014B000 8AD22E00 F8020725 VALID UR K
8014B200 8AD22E04 F8020726 VALID UR K
8014B400 8AD22E08 F8020727 VALID UR K
8014B600 8AD22E0C F8020728 VALID UR K
8014B800 8AD22E10 F8020729 VALID UR K
8014BA00 8AD22E14 EC02072A VALID UREW M K
8014BC00 8AD22E18 F402072B VALID URKW M K
.
.
.
8014BE00 8AD22FEC F801F10E VALID UR K SYSTEM ACTIVE 07 01 1 0040FFF8 8AD22FEC 00000000 00000258
8014C000 8AD22FF0 F801F10F VALID UR K SYSTEM ACTIVE 07 01 1 0040FFF8 8AD22FF0 00000000 00000257
8014C200 8AD22FF4 F801F173 VALID UR K SYSTEM ACTIVE 07 01 1 0040FFF8 8AD22FF4 00000000 000004B1
8014C400 8AD22FF8 F801F172 VALID UR K SYSTEM ACTIVE 07 01 1 0040FFF8 8AD22FF8 00000000 00000301
8014C600 8AD22FFC F801F17F VALID UR K SYSTEM ACTIVE 07 01 1 0040FFF8 8AD22FFC 00000000 000000F5
8014C800 8AD23000 F801F17E VALID UR K SYSTEM ACTIVE 07 01 1 0040FFF8 8AD23000 00000000 00000174
8014CA00 8AD23004 7801EBC6 TRANS UR K SYSTEM FREELST 00 01 0 0040FFF8 8AD23004 0000D38B 0001EBC7
.
.
.
|
SHOW PFN_DATA
Displays information that is contained in the page lists and PFN
database.
Format
SHOW PFN_DATA [pfn] [/qualifier]
Parameter
pfn
Page frame number (PFN) of the physical page for which information is
to be displayed.
Qualifiers
/ALL
Displays the free page list, modified page list, and bad page list.
This is the default behavior of the SHOW PFN_DATA command. SDA precedes
each list with a count of the pages it contains and its low and high
limits.
/BAD
Displays the bad page list. SDA precedes the list with a count of the
pages it contains, its low limit, and its high limit.
/FREE
Displays the free page list. SDA precedes the list with a count of the
pages it contains, its low limit, and its high limit.
/MODIFIED
Displays the modified page list. SDA precedes the list with a count of
the pages it contains, its low limit, and its high limit.
/SYSTEM
Displays the entire PFN database in order by page frame number,
starting at PFN 0000.
Description
For each page frame number it displays, the SHOW PFN_DATA command lists
information used in translating physical page addresses to virtual page
addresses. Table SDA-18 lists the contents of the display.
Table SDA-18 Page Frame Number Information in the SHOW PFN_DATA Display
Item |
Contents |
PFN
|
Page frame number
|
PTE ADDRESS
|
System virtual address of the page table entry that describes the
virtual page mapped into this physical page
|
BAK
|
Place to find context, as information about this page when all links to
this PTE are broken: either an index into a process section table or
the number of a virtual block in the paging file
|
REFCNT
|
Number of references being made to this page
|
FLINK
|
Address of the next page in the list in which this virtual page
currently resides
|
BLINK
|
Address of the previous page in the list in which this virtual page
currently resides
|
TYPE
|
Type of virtual page; one of the following:
- 00
Process page
- 01
System page
- 02
Global, read-only page
- 03
Global, read/write page
- 04
Process page-table page
- 05
Global page-table page
|
STATE
|
State of the virtual page, the low nibble of which can be one of the
following:
- 0
Page is on the free page list.
- 1
Page is on the modified page list.
- 2
Page is on the bad page list.
- 3
Release of the page to the free or modified page list is pending.
- 4
Error occurred as the page was being read from the disk.
- 5
Modified page writer is currently writing the page to the disk.
- 6
Page fault handler is currently reading the page from the disk.
- 7
Page is active and valid.
|
Example
|
SDA>SHOW PFN_DATA
Free page list
--------------
Count: 225
Low limit: 57
High limit: 1073741824
PFN PTE ADDRESS BAK REFCNT FLINK BLINK TYPE STATE
---- ----------- -------- ------ ----- ----- ---------- ----------
1329 8047AF3C 03002A83 0 1963 0000 00 PROCESS 00 FREELST
1963 8047AB10 03002A43 0 017C 1329 00 PROCESS 00 FREELST
017C 8047B3F8 03002A84 0 14B4 1963 00 PROCESS 00 FREELST
14B4 8047B464 03002A85 0 1529 017C 00 PROCESS 00 FREELST
1529 8047AA34 03002A87 0 1485 14B4 00 PROCESS 00 FREELST
1485 8047AC80 030010B3 0 1707 1529 00 PROCESS 00 FREELST
.
.
.
|
In this example, the SHOW PFN_DATA command displays the information for
the free page list, the modified page list, and the bad page list, and
then all of the PFN database, including the first three lists.
SHOW POOL
Displays information about the disposition of paged and nonpaged
memory, nonpaged dynamic storage pool, and paged dynamic storage pool.
Format
SHOW POOL [range][/ALL|/FREE|/HEADER|/NONPAGED|
/PAGED|/RING_BUFFER|/STATISTICS| /SUMMARY|/TYPE=block-type]
Parameters
range
Range of virtual addresses in pool that SDA is to examine. You can
express a range using the following format:
m:n
|
Range of virtual addresses in pool from
m to
n
|
m;n
|
Range of virtual addresses in pool starting at
m and continuing for
n bytes
|
Qualifiers
/ALL
Displays the entire contents of allocated pool, including the pool
lists, nonpaged dynamic storage pool, and paged dynamic storage pool.
This is the default behavior of the SHOW POOL command.
/FREE
Displays the entire contents, both allocated and free, of the specified
region or regions of pool. You cannot use the /FREE qualifier when you
use a range to indicate a region of pool to be
displayed.
/HEADER
Displays only the first 16 longwords of each data block found within
the specified region or regions of pool.
/NONPAGED
Displays the contents of the
nonpaged dynamic storage pool currently in use.
/PAGED
Displays the contents of the paged dynamic storage pool currently in
use.
/RING_BUFFER
Displays the contents of the nonpaged pool history ring buffer if
pool-checking has been enabled. Entries are displayed in reverse
chronological order, that is, the most recent to the least recent. You
cannot use this qualifier with any other SHOW POOL qualifier. This
qualifier is most useful when analyzing crash dumps; output might not
be consistent when used on a running system.
/STATISTICS
Displays usage statistics about each pool list if pool-checking has
been enabled. For each list, the following are displayed:
- Queue header address
- Packet size
- Attempts, failures, and deallocations
SDA does not synchronize
its access to these last three counters with other CPUs in a symmetric
multiprocessing (SMP) system. Therefore, the numbers might not add up
to what you would expect in a multiprocessor configuration. However,
the statistics do provide a good indicator of overall pool activity.
/SUMMARY
Displays only an allocation summary for each specified region of pool.
/TYPE=block-type
Displays the blocks within the specified region or regions of pool that
are of the indicated block-type. If SDA finds no
blocks of that type in the pool region, it displays a blank screen,
followed by an allocation summary of the region.
Description
The SHOW POOL command displays information about the contents of any
specified region of pool in an 8-column format. Following are
explanations and examples of the contents of the full display.
- Column 1 contains the type of control block that starts at the
virtual address in pool indicated in column 2. If SDA cannot interpret
the block type, it displays a block type of "UNKNOWN." Column
3 lists the number of bytes (in decimal) of memory allocated to the
block. The block size is fixed for SRPs, IRPs, and LRPs, and is
variable in the paged and nonpaged pools. For example:
Col. 1 Col. 2 Col. 3
------ -------- ------
CIMSG 80BADE00 208
|
- The remaining columns contain a dump of the contents of the block,
in 4-longword intervals, until the block is complete. Columns 4 through
7 display, from right to left, the contents in hexadecimal; column 8
displays, from left to right, the contents in ASCII. If the ASCII value
of a byte is not a printing character, SDA displays a period (.)
instead. For example:
Col. 4 Col. 5 Col. 6 Col. 7 Col. 8
-------- -------- -------- -------- ----------------
001000DA 003C0090 0000A900 00036FF0 .o........<.Ú...
D9B3001C 00000000 A0B5001D 35E60017 ...5............
41414141 00000600 65EA0004 00000600 .......e....AAAA
41414141 41414141 41414141 41414141 AAAAAAAAAAAAAAAA
|
- For each region of pool it examines, the SHOW POOL command
displays an allocation summary. This 4-column table lists, in column 2,
the types of control blocks identified in the region and records the
number of each in column 1. The last two columns represent the amount
of the pool region occupied by each type of control block: column 3
records the total number of bytes, and column 4 records the percentage.
The summary concludes with an indication of the number of bytes used
within the particular pool region, as well as the number of bytes
remaining. It provides an estimate of the percentage of the region that
has been allocated. For example:
Col.1 Col. 2 Col.3 Col. 4
----- ------- ----- ------
3 UNKNOWN = 176 (29%
2 CIDG = 288 (48%
1 CIMSG = 144 (24%)
Total space used = 608 out of 608 total bytes, 0 bytes left
Total space utilization = 100%
|
Examples
#1 |
SDA> SHOW POOL G0BADE00;260
Non-paged dynamic storage pool
------------------------------
Dump of blocks allocated from non-paged pool
CIMSG 80BADE00 144
001000DA 003C0090 0000A900 00036FF0 .o........<.....
D9B3001C 00000000 A0B5001D 35E60017 ...5............
41414141 00000600 65EA0004 00000600 .......e....AAAA
41414141 41414141 41414141 41414141 AAAAAAAAAAAAAAAA
41414141 41414141 41414141 41414141 AAAAAAAAAAAAAAAA
.
.
.
UNKNOWN 80BADE90 112
41414141 41414141 41414141 41414141 AAAAAAAAAAAAAAAA
41414141 41414141 41414141 41414141 AAAAAAAAAAAAAAAA
41414141 41414141 41414141 41414141 AAAAAAAAAAAAAAAA
41414141 41414141 41414141 41414141 AAAAAAAAAAAAAAAA
.
.
.
CIDG 80BADED0 144
807708BB 003B0090 0004D7E0 000008F0 ..........;...w.
61616161 61616161 61616161 016CE87C ..l.aaaaaaaaaaaa
61616161 61616161 61616161 61616161 aaaaaaaaaaaaaaaa
61616161 61616161 61616161 61616161 aaaaaaaaaaaaaaaa
.
.
.
UNKNOWN 80BADF60 64
61616161 61616161 61616161 61616161 aaaaaaaaaaaaaaaa
61616161 61616161 61616161 61616161 aaaaaaaaaaaaaaaa
61616161 61616161 61616161 61616161 aaaaaaaaaaaaaaaa
61616161 61616161 61616161 61616161 aaaaaaaaaaaaaaaa
.
.
.
CIDG 80BADFA0 144
807708BB 003B0090 0003FFC0 0004B1B0 ..........;...w.
61616161 61616161 61616161 016CE94C L.l.aaaaaaaaaaaa
61616161 61616161 61616161 61616161 aaaaaaaaaaaaaaaa
61616161 61616161 61616161 61616161 aaaaaaaaaaaaaaaa
.
.
.
UNKNOWN 80BAE030 48
61616161 61616161 61616161 61616161 aaaaaaaaaaaaaaaa
61616161 61616161 61616161 61616161 aaaaaaaaaaaaaaaa
61616161 61616161 61616161 61616161 aaaaaaaaaaaaaaaa
Summary of non-paged pool contents
3 UNKNOWN = 176 (29%)
2 CIDG = 288 (48%)
1 CIMSG = 144 (24%)
Total space used = 608 out of 608 total bytes, 0 bytes left
Total space utilization = 100%
|
This example, which uses a range of values, examines 608
(26016) bytes of nonpaged pool, starting at address
80BADE0016. SDA attempts to identify allocated blocks as it
proceeds through the specified region of pool, and displays an
allocation summary when it completes the listing.
#2 |
SDA> SHOW POOL/FREE
Non-paged dynamic storage pool
------------------------------
Dump of blocks allocated from non-paged pool
UNKNOWN 80E7C400 67136
0000E53B 80E9EC00 00010000 80F16625 %fñ......ìé.;å..
0000E53B 80E9EC00 00010001 80F16625 %fñ......ìé.;å..
0000E53B 80E9EC00 00010000 80F166A3 £fñ......ìé.;å..
0000E53B 80E9EC00 00010001 80F166A3 £fñ......ìé.;å..
0000E53B 80E9EC00 00010000 80F16066 f........ìé.;å..
0000E53B 80E9EC00 00010001 80F16066 f........ìé.;å..
0000E53B 80E9EC00 00010000 80F16F32 2oñ......ìé.;å..
0000E53B 80E9EC00 00010001 80F16F32 2oñ......ìé.;å..
0000E53D 80EA1B08 00010000 80F16F48 Hoñ.......ê.=å..
0000E53D 80E9EC00 00010001 80F16F48 Hoñ......ìé.=å..
0000E53D 80E9EC00 00010000 80F170D8 Øpñ......ìé.=å..
.
.
.
|
The SHOW POOL/FREE command in this example produces a display similar
in format and extent to that presented in Example 1. However, it
displays the unallocated portions of pool in addition to those that are
used.
#3 |
SDA> SHOW POOL/PAGED/HEADER
Paged dynamic storage pool
--------------------------
Dump of blocks allocated from paged pool
RSHT 8024FE00 528
802DC710 00380210 00000000 FFFFFF80 ..........8...-.
LNM 80250010 96
8015B847 00400060 802D75A0 00000000 .....u-.`.@.G...
LNM 80250070 48
8015B847 01400030 802500A0 802D7400 .t-...%.0.@.G...
LNM 802500A0 96
8015B847 02400060 802DC170 80250070 p.%.p.-.`.@.G...
LNM 80250100 48
8015B847 00400030 802DC510 802E1B60 `.....-.0.@.G...
.
.
.
|
|