|
OpenVMS Alpha System Analysis Tools Manual
SHOW LOCKS
Displays information about all lock management locks in the system, or
about a specified lock.
Format
SHOW LOCKS {lock-id|/ADDRESS=n|/ALL (d)|
/BLOCKING|/BRIEF|/CACHED|/CONVERT|/GRANTED
|/NAME=name|/POOL| /STATUS=(keyword
[,keyword...])|/SUMMARY| /WAITING}
Parameter
lock-id
Name of a specific lock.
Qualifiers
/ADDRESS=n
Displays a specific lock, given the address of the lock block.
/ALL
Lists all locks that exist in the system. This is the default behavior
of the SHOW LOCK command.
/BLOCKING
Displays only the locks that have a blocking AST specified or attached.
/BRIEF
Displays a single line of information for each lock.
/CACHED
Displays locks that are no longer valid. The memory for these locks is
saved so that later requests for locks can use them. Cached locks are
not displayed in the other SHOW LOCK commands.
/CONVERT
Displays only the locks that are on the conversion queue.
/GRANTED
Displays only the locks that are on the granted queue.
/NAME=name
Displays a specified lock with the given name.
/POOL
Displays the lock manager's poolzone information, which contains the
lock blocks (LKB) and resource blocks (RSB).
/STATUS=(keyword[,keyword...])
Displays only the locks that have the specified status bits set in the
LKB$L_STATUS field. Status keywords are as follows:
Keyword |
Meaning |
2PC_IP
|
Indicates a two-phase operation in progress
|
2PC_PEND
|
Indicates a two-phase operation pending
|
ASYNC
|
Completes request asynchronously
|
BLKASTFLG
|
Specifies a blocking AST
|
BLKASTQED
|
Indicates a blocking AST is queued
|
BRL
|
Indicates a byte range lock
|
CACHED
|
Indicates a lock block in cache
|
CVTSUBRNG
|
Indicates a sub-range convert request
|
CVTTOSYS
|
Converts back to system-owned lock
|
DBLKAST
|
Delivers a blocking AST
|
DCPLAST
|
Delivers a completion AST
|
DPC
|
Indicates a delete pending cache lock
|
FLOCK
|
Indicates a fork lock
|
GRSUBRNG
|
Grants sub-range lock
|
IP
|
Indicates operation in process
|
MSTCPY
|
Indicates a lock block is a master copy
|
NEWSUBRNG
|
Indicates a new sub-range request
|
NOQUOTA
|
Does not charge quota
|
PCACHED
|
Indicates lock block needs to be cached
|
PROTECT
|
Indicates a protected lock
|
RESEND
|
Resends during failover
|
RM_RBRQD
|
Requires remaster rebuild
|
RNGBLK
|
Specifies a range block
|
RNGCHG
|
Indicates a changing range
|
TIMOUTQ
|
Indicates lock block is on timeout queue
|
VALBLKRD
|
Indicates read access to lock value block
|
VALBLKWRT
|
Indicates write access to lock value block
|
WASSYSOWN
|
Indicates was system-owned lock
|
/SUMMARY
Displays summary data and performance counters.
/WAITING
Displays only the waiting locks.
Description
The SHOW LOCKS command displays the information described in
Table 4-4 for each lock management lock in the system, or for the
lock indicated by lock-id, an address or name. (Use
the SHOW SPINLOCKS command to display information about spinlocks.) You
can obtain a similar display for the locks owned by a specific process
by issuing the appropriate SHOW PROCESS/LOCKS command. See the
OpenVMS Programming Concepts Manual for additional information.
You can display information about the resource to which a lock is
queued by issuing the SHOW RESOURCES command specifying the resource's
lock-id.
Table 4-4 Contents of the SHOW LOCK and SHOW PROCESS/LOCKS Displays
Display Element |
Description |
Process Index
1
|
Index in the PCB array to a pointer to the process control block (PCB)
of the process that owns the lock.
|
Name
1
|
Name of the process that owns the lock.
|
Extended PID
1
|
Clusterwide identification of the process that owns the lock.
|
Lock ID
|
Identification of the lock.
|
PID
|
Systemwide identification of the lock.
|
Flags
|
Information specified in the request for the lock.
|
Par. ID
|
Identification of the lock's parent lock.
|
Sublocks
|
Count of the locks that the lock owns.
|
LKB
|
Address of the lock block (LKB). If a blocking AST has been enabled for
this lock, the notation "BLKAST" appears next to the LKB
address.
|
Priority
|
The lock priority.
|
Granted at
|
Lock mode at which the lock was granted.
|
RSB
|
Address of the resource block.
|
Resource
|
Dump of the resource name. The two leftmost columns of the dump show
its contents as hexadecimal values, the least significant byte being
represented by the rightmost two digits. The rightmost column
represents its contents as ASCII text, the least significant byte being
represented by the leftmost character.
|
Status
|
Status of the lock, information used internally by the lock manager.
|
Length
|
Length of the resource name.
|
Mode
|
Processor access mode of the namespace in which the resource block
(RSB) associated with the lock resides.
|
Owner
|
Owner of the resource. Certain resources owned by the operating system
list "System" as the owner. Resources owned by a group have
the number (in octal) of the owning group in this field.
|
Copy
|
Indication of whether the lock is mastered on the local system or is a
process copy.
|
1This display element is produced only by the SHOW
PROCESS/LOCKS command.
Examples
#1 |
SDA> SHOW LOCKS
Lock Database
-------------
Lock id: 3E000002 PID: 00000000 Flags: CONVERT NOQUEUE SYNCSTS
Par. id: 00000000 SUBLCKs: 0 NOQUOTA CVTSYS
LKB: FFFFFFFF.7DF48150 BLKAST: 81107278
Priority: 0000
Granted at CR 00000000-FFFFFFFF
RSB: FFFFFFFF.7DF68D50
Resource: 494D6224 42313146 F11B$bMI Status: NOQUOTA VALBLKR VALBLKW
Length 18 4D55445F 5944414C LADY_DUM
Kernel mode 00000000 00005350 PS......
System 00000000 00000000 ........
Local copy
Lock Database
-------------
Lock id: 3F000003 PID: 00000000 Flags: VALBLK CONVERT SYNCSTS
Par. id: 0100007A SUBLCKs: 0 CVTSYS
LKB: FFFFFFFF.7DF48250 BLKAST: 00000000
Priority: 0000
Granted at NL 00000000-FFFFFFFF
RSB: FFFFFFFF.7DF51D50
Resource: 01F77324 42313146 F11B$s÷. Status: NOQUOTA VALBLKR VALBLKW
Length 10 00000000 00000000 ........
Kernel mode 00000000 00000000 ........
System 00000000 00000000 ........
Local copy
Lock Database
-------------
Lock id: 0A000004 PID: 0001000F Flags: VALBLK CONVERT SYNCSTS
Par. id: 00000000 SUBLCKs: 0 SYSTEM NODLCKW NODLCKB
LKB: FFFFFFFF.7DF48350 BLKAST: 81190420 QUECVT
Priority: 0000
Granted at EX 00000000-FFFFFFFF
RSB: FFFFFFFF.7DF50850
Resource: 004F0FDF 24534D52 RMS$ß.O. Status: VALBLKR VALBLKW
Length 26 5F313039 58020000 ...X901_
Exec. mode 00202020 204C354B K5L .
System 00000000 00000000 ........
Local copy
.
.
.
|
#2 |
SDA> SHOW RESOURCES/LOCKID=0A000004
Resource Database
-----------------
RSB: FFFFFFFF.7DF50850 GGMODE: EX Status: DIRENTR VALID
Parent RSB: 00000000.00000000 CGMODE: EX
Sub-RSB count: 0 FGMODE: EX
Lock Count: 1 RQSEQNM: 0000
BLKAST count: 1 CSID: 00000000 (MILADY)
Resource: 004F0FDF 24534D52 RMS$ß.O. Valblk: 00000000 00000000
Length 26 5F313039 58020000 ...X901_ 00000000 00000000
Exec. mode 00202020 204C354B K5L .
System 00000000 00000000 ........ Seqnum: 00000000
Granted queue (Lock ID / Gr mode / Range):
0A000004 EX 00000000-FFFFFFFF
Conversion queue (Lock ID / Gr mode / Range -> Rq mode / Range):
*** EMPTY QUEUE ***
Waiting queue (Lock ID / Rq mode / Range):
*** EMPTY QUEUE ***
|
This SDA session shows the output of the SHOW LOCKS command for several
locks. The SHOW RESOURCES command, executed for the last displayed
lock, verifies that the lock is in the resource's granted queue. (See
Table 4-21 for a full explanation of the contents of the display of
the SHOW RESOURCES command.)
This example shows the brief display for all locks with a blocking AST.
SHOW MACHINE_CHECK
Displays the contents of the stored machine check frame. This command
is valid for the DEC 4000 Alpha, DEC 7000 Alpha, and DEC 10000 Alpha
computers only.
Format
SHOW MACHINE_CHECK [/FULL] [cpu-id]
Parameter
cpu-id
Numeric value from 00 to 1F16 indicating the identity of the
CPU for which context information is to be displayed. This parameter
changes the SDA current CPU (the default) to the CPU specified with
cpu-id. If you specify a value outside this range, or
you specify the cpu-id of a processor that was not
active at the time of the system failure, SDA displays the following
message:
%SDA-E-CPUNOTVLD, CPU not booted or CPU number out of range
|
If you use the cpu-id parameter, the SHOW
MACHINE_CHECK command performs an implicit SET CPU command, making the
CPU indicated by cpu-id the current CPU for subsequent
SDA commands. (See the description of the SET CPU command and
Chapter 2, Section 2.5 for information on how this can affect the
CPU context---and process context---in which SDA commands execute.)
Qualifier
/FULL
Specifies that a detailed version of the machine check information be
displayed. This is currently identical to the default summary display.
Description
The SHOW MACHINE_CHECK command displays the contents of the stored
machine check frame. A separate frame is allocated at boot time for
every CPU in a multiple-CPU system. This command is valid for the DEC
4000 Alpha, DEC 7000 Alpha, and DEC 10000 Alpha computers only.
If you do not specify a qualifier, a summary version of the machine
check frame is displayed.
The default cpu-id is the SDA current CPU.
Examples
#1 |
SDA> SHOW MACHINE_CHECK
CPU 00 Stored Machine Check Crash Data
--------------------------------------
Processor specific information:
-------------------------------
Exception address: FFFFFFFF.800B0250 Exception Summary: 00000000.00000000
Pal base address: 00000000.00008000 Exception Mask: 00000000.00000000
HW Interrupt Request: 00000000.00000342 HW Interrupt Ena: 00000001.FFC01CE0
MM_CSR 00000000.00003640 ICCSR: 00000002.381F0000
D-cache address: 00000007.FFFFFFFF D-cache status: 00000000.000002E0
BIU status: 00000000.00000050 BIU address [7..0]: 00000000.000060E0
BIU control: 00000008.50006447 Fill Address: 00000000.00006120
Single-bit syndrome: 00000000.00000000 Processor mchck VA: 00000000.00006190
A-box control: 00000000.0000040E B-cache TAG: 00106100.83008828
System specific information:
----------------------------
Garbage bus info: 00200009 00000038 Device type: 000B8001
LCNR: 00000001 Memory error: 00000000
LBER: 00000009 Bus error synd 0,1: 00000000 00000000
Bus error cmd: 00048858 00AB1C88 Bus error synd 2,3: 00000000 0000002C
LEP mode: 00010010 LEP lock address: 00041108
|
The SHOW MACHINE_CHECK command in this SDA display shows the contents
of the stored machine check frame.
#2 |
SDA> SHOW MACHINE_CHECK 1
CPU 01 Stored Machine Check Crash Data
--------------------------------------
Processor specific information:
-------------------------------
Exception address: FFFFFFFF.800868A0 Exception Summary: 00000000.00000000
Pal base address: 00000000.00008000 Exception Mask: 00000000.00000000
HW Interrupt Request: 00000000.00000342 HW Interrupt Ena: 00000000.1FFE1CE0
MM_CSR 00000000.00005BF1 ICCSR: 00000000.081F0000
D-cache address: 00000007.FFFFFFFF D-cache status: 00000000.000002E0
BIU status: 00000000.00000050 BIU address [7..0]: 00000000.000063E0
BIU control: 00000008.50006447 Fill Address: 00000000.00006420
Single-bit syndrome: 00000000.00000000 Processor mchck VA: 00000000.00006490
A-box control: 00000000.0000040E B-cache TAG: 35028EA0.50833828
System specific information:
----------------------------
Garbage bus info: 00210001 00000038 Device type: 000B8001
LCNR: 00000001 Memory error: 00000080
LBER: 00040209 Bus error synd 0,1: 00000000 00000000
Bus error cmd: 00048858 00AB1C88 Bus error synd 2,3: 00000000 0000002C
LEP mode: 00010010 LEP lock address: 00041108
|
The SHOW MACHINE_CHECK command in this SDA display shows the contents
of the stored machine check frame for cpu-id 01.
SHOW MEMORY
Displays the availability and usage of memory resources.
Format
SHOW MEMORY [/ALL][/BUFFER_OBJECTS][/CACHE][/FILES]
[/FULL][/GH_REGIONS][/PHYSICAL_PAGES][/POOL] [/RESERVED][/SLOTS]
Parameters
None.
Qualifiers
/ALL
Displays all available information, that is, information displayed by
the following qualifiers:
/BUFFER_OBJECTS
/CACHE
/FILES
/GH_REGIONS
/PHYSICAL_PAGES
/POOL
/RESERVED
/SLOTS
This is the default display.
/BUFFER_OBJECTS
Displays information about system resources used by buffer objects.
/CACHE
Displays information about either the Virtual I/O Cache facility, or
the Extended File Cache facility. The system parameter VCC_FLAGS
determines which is used. The cache facility information is displayed
as part of the SHOW MEMORY and SHOW MEMORY/CACHE/FULL commands.
/FILES
Displays information about the use of each paging and swapping file
currently installed.
/FULL
Displays additional information about each pool area or paging or
swapping file currently installed, when used with the /POOL or the
/FILES qualifier. This qualifier is ignored unless the /FILES or the
/POOL qualifier is specified explicitly. When used with the /CACHE
qualifier, /FULL displays additional information about the use of the
Virtual I/O Cache facility, but is ignored if the Extended File Cache
facility is in use.
/GH_REGIONS
Displays information about the granularity hint regions (GHR) that have
been established. For each of these regions, information is displayed
about the size of the region, the amount of free memory, the amount of
memory in use, and the amount of memory released to OpenVMS from the
region. The granularity hint regions information is also displayed as
part of SHOW MEMORY, SHOW MEMORY/ALL, and SHOW MEMORY/FULL commands.
/PHYSICAL_PAGES
Displays information about the amount of physical memory and the number
of free and modified pages.
/POOL
Displays information about the usage of each dynamic memory (pool)
area, including the amount of free space and the size of the largest
contiguous block in each area.
/RESERVED
Displays information about memory reservations.
/SLOTS
Displays information about the availability of partition control block
(PCB) vector slots and balance slots.
Description
For more details on the SHOW MEMORY command, see the description in
OpenVMS DCL Dictionary: N--Z.
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 {range|/FREE [/HEADER=address] |/GLOBAL|/GPT|/PT
|/INVALID_PFN [=option] |/NONMEMORY_PFN
[=option] |/PTE_ADDRESS|/SECTION_INDEX=n
|/S0S1 (d)|/S2|/SPTW|=ALL} {/L1|/L2|/L3 (d)}
Parameter
range
Range of virtual addresses or PTE addresses for which SDA displays page
table entries. If the qualifier /PTE_ADDRESS is given, then the range
is of PTE addresses; otherwise, the range is of virtual addresses.
If /PTE_ADDRESS is given, the range is expressed using the following
syntax:
m
|
Displays the single page table entry at address
m
|
m:n
|
Displays the page table entries from address
m to address
n
|
m;n
|
Displays
n bytes of page table entries starting at address
m
|
If /PTE_ADDRESS is not given, then range is expressed using the
following syntax:
m
|
Displays the single page table entry that corresponds to virtual address
m
|
m:n
|
Displays the page table entries that correspond to the range of virtual
addresses from
m to
n
|
m;n
|
Displays the page table entries that correspond to a range of
n bytes starting at virtual address
m
|
Qualifiers
/FREE
Causes the starting addresses and sizes of blocks of pages in the free
page list to be displayed. The qualifiers /S0S1 (default), /S2,
/GLOBAL, and /HEADER determine which free page list is to be displayed.
/GLOBAL
Lists the global page table. When used with the /FREE qualifier,
/GLOBAL indicates the free page list to be displayed.
/HEADER=address
When used with the /FREE qualifier, the /HEADER=address qualifier
displays the free list for the specified private page table.
/GPT
Specifies the portion of page table space that maps the global page
table as the address range.
/INVALID_PFN [=option]
The /INVALID_PFN qualifier, which is valid on platforms that supply an
I/O memory map, causes SDA to display only page table entries that map
to PFNs that are not in the system's private memory, nor in Galaxy
shared memory, nor are I/O access pages.
See the /NONMEMORY_PFN qualifier definition for a description of the
options.
/L1
Lists the Level 1 page table entries for the portion of memory
specified.
/L2
Lists the Level 2 page table entries for the portion of memory
specified.
/L3
Lists the Level 3 page table entries for the portion of memory
specified. This qualifier is the default level.
/NONMEMORY_PFN [=option]
The /NONMEMORY_PFN qualifier, supported on all platforms, causes SDA to
display only page table entries that are neither in the system's
private memory nor in Galaxy shared memory.
Both /INVALID_PFN and /NONMEMORY_PFN qualifiers allow two optional
keywords, READONLY and WRITABLE. If neither keyword is given, all
relevant pages are displayed. If READONLY is given, only pages marked
for no write access are displayed. If WRITABLE is given, only pages
that allow write access are displayed. For example, SHOW
PAGE_TABLE=ALL/INVALID_PFN=WRITABLE would display all system pages
whose protection allows write, but which map to PFNs that do not belong
to this system.
/PT
Specifies page table space, as viewed from system context, as the
address range.
/PTE_ADDRESS
Specifies that the range given is of PTE addresses instead of the
virtual addresses mapped by the PTEs.
/SECTION_INDEX=n
Displays the page table for the range of pages in the global section or
pageable part of a loaded image. For pageable portions of loaded
images, one of the qualifiers /L1, /L2, or /L3 can also be specified.
/S0S1
Specifies S0 and S1 space as the address range. When used with the
/FREE qualifer, /S0S1 indicates the free page list to be displayed.
This is the default portion of memory or free page list to be displayed.
/S2
Specifies S2 space as the address range. When used with the /FREE
qualifier, /S2 indicates the free page list to be displayed.
/SPTW
Displays the contents of the system page table window.
Option
=ALL
The SHOW PAGE = ALL command displays the page table entries for all
shared (system) addresses, without regard to the section of memory
being referenced. It is equivalent to specifying all of /S0S1, /S2,
/SPTW, /PT, /GPT, and /GLOBAL. This option can be qualified by only one
of the /L1, /L2, or /L3 qualifiers.
Description
If the /FREE qualifier is not specified, this command displays page
table entries for the specified range of addresses or section of
memory. For each virtual address displayed by the SHOW PAGE_TABLE
command, the first eight columns of the listing provide the associated
page table entry and describe its location, characteristics, and
contents. SDA obtains this information from the system page table.
Table 4-5 describes the information displayed by the SHOW
PAGE_TABLE command.
If the /FREE qualifier is specified, this command displays the free PTE
list for the specified section of memory.
Note that the /L1, /L2, and /L3 qualifiers are ignored when used with
the /FREE, /GLOBAL, and /SPTW qualifiers.
Table 4-5 Virtual Page Information in the SHOW PAGE_TABLE Display
Value |
Meaning |
MAPPED ADDRESS
|
Virtual address that marks the base of the virtual page(s) mapped by
the PTE.
|
PTE ADDRESS
|
Virtual address of the page table entry that maps the virtual page(s).
|
PTE
|
Contents of the page table entry, a quadword that describes a system
virtual page.
|
TYPE
|
Type of virtual page. Table 4-6 shows the eight types and their
meanings.
|
READ
|
A code, derived from bits in the PTE, that designates the processor
access modes (kernel, executive, supervisor, or user) for which read
access is granted.
|
WRIT
|
A code, derived from bits in the PTE, that designates the processor
access modes (kernel, executive, supervisor, or user) for which write
access is granted.
|
BITS
|
Letters that represent the setting of a bit or a combination of bits in
the PTE. These bits indicate attributes of a page. Table 4-7 shows
the codes and their meanings.
|
GH
|
Contents of granularity hint bits.
|
Table 4-6 Type of Virtual Pages
Type |
Meaning |
VALID
|
Valid page (in main memory).
|
TRANS
|
Transitional page (on free or modified page list).
|
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.
|
Table 4-7 Bits In the PTE
Code |
Meaning |
A
|
Address space match is set.
|
M
|
Page has been modified.
|
L
|
Page is locked into a working set.
|
K
|
Owner is kernel mode.
|
E
|
Owner is executive mode.
|
S
|
Owner is supervisor mode.
|
U
|
Owner is user mode.
|
|