[an error occurred while processing this directive]

HP OpenVMS Systems Documentation

Content starts here

HP OpenVMS Version 8.3 New Features and Documentation Overview


Previous Contents Index


VALIDATE POOL

Checks all free pool packets for POOLCHECK-style corruption, using the same algorithm as the system pool allocation routines when generating a POOLCHECK bugcheck and system dump.

Format

VALIDATE POOL { /ALL (d) | /BAP | /NONPAGED | /PAGED } [ /HEADER | /MAXIMUM_BYTES [ = n ] /SUMMARY ]


Parameters

None


Qualifiers

/ALL

Checks free packets for all pool types (nonpaged pool, paged pool, and bus-addressable pool). This is the default.

/BAP

Checks free packets in bus-addressable pool.

/HEADER

Displays only the first 16 bytes of any corrupted free packets found.

/MAXIMUM_BYTES[=n]

Displays only the first n bytes of any corrupted free packets found. If you specify /MAXIMUM_BYTES without a value, the default is 64 bytes.

/NONPAGED

Checks free packets in nonpaged pool.

/PAGED

Checks free packets in paged pool.

/SUMMARY

Displays only a summary of corrupted pool packets found.

Description

The VALIDATE POOL command displays information about corrupted free pool packets. It is useful only if pool checking is enabled using either the POOLCHECK or the SYSTEM_CHECK system parameters. (For information about these system parameters, see the HP OpenVMS System Management Utilities Reference Manual).

VALIDATE PROCESS

Performs validation of process data structures. Currently, the only validation available is to check free process pool packets for POOLCHECK-style corruption, using the same algorithm as the system pool allocation routines when generating a POOLCHECK bugcheck and system dump.

Format

VALIDATE PROCESS/POOL [ = { P0 | P1 | IMGACT | ALL (d) } ] [ /ADDRESS = pcb-address | process name | ALL | /ID = nn | /INDEX = nn | /NEXT | /SYSTEM ] [ /HEADER | /MAXIMUM_BYTES [ = n ]/SUMMARY ]


Parameters

ALL

Indicates that all processes in the system are to be validated.

process-name

Name of the process to be validated. The process name can contain up to 15 uppercase letters, numerals, an underscore (_), dollar sign ($), colon (:), and some other printable characters. If it contains any other characters (including lowercase letters), you might need to enclose the process name in quotation marks (" ").

Qualifiers

/ADDRESS = pcb-address

Specifies the process control block (PCB) address of the process to be validated.

/HEADER

Displays only the first 16 bytes of any corrupted free packets found.

/ID = nn/INDEX = nn

Specifies the process to be validated by its index into the system's list of software PCBs, or by its process identification. You can supply the following values for nn:
  • Process index itself.
  • Process identification (PID) or extended PID longword, from which SDA extracts the correct index. The PID or extended PID of any thread of a process with multiple kernel threads can be specified. Any thread-specific data displayed by further commands is for the given thread.

To obtain these values for any given process, issue the SDA command SHOW SUMMARY/THREADS. The /ID=nn and /INDEX=nn qualifiers can be used interchangeably.

/MAXIMUM_BYTES[=n]

Displays only the first n bytes of any corrupted free packets found. If you specify /MAXIMUM_BYTES without a value, the default is 64 bytes.

/NEXT

Causes SDA to locate the next process in the process list and validate that process. If there are no further processes in the process list, SDA returns an error.

/POOL[ = { P0 | P1 | IMGACT | ALL (d) } ]

Process pool validation is to be performed. This qualifier is required. Use of a keyword on the /POOL qualifier allows the user to specify which process pool is to be validated (P0, P1, or Image Activator Pool). The default is to validate all process pools.

/SUMMARY

Displays only a summary of corrupted pool packets found.

/SYSTEM

This qualifier is provided for compatibility with SET PROCESS/SYSTEM and SHOW PROCESS/SYSTEM. There is no pool associated with the system process that can be validated. SDA sets its current process context to the system process and outputs the following text:


Options ignored for System process:  POOL

Description

The VALIDATE PROCESS command validates the process specified by process-name, the process specified in the /ID or /INDEX qualifier, the next process in the system's process list, the system process, or all processes. The VALIDATE PROCESS command performs an implicit SET PROCESS command under certain uses of its qualifiers and parameters, as noted previously. By default, the VALIDATE PROCESS command validates the SDA current process, as defined in HP OpenVMS System Analysis Tools Manual.

Currently, the only validation available is to check free pool packets for POOLCHECK-style corruption. The command is useful only if pool checking is enabled using either the POOLCHECK or the SYSTEM_CHECK system parameters. (For information on these system parameters, see the HP OpenVMS System Management Utilities Reference Manual.

If a process is specified using process-name, /ADDRESS, /ID, /INDEX, /NEXT, or /SYSTEM, that process becomes the SDA current process for future commands.


CLUE REGISTER

Displays the active register set for the crash CPU. The CLUE REGISTER command is valid only for analyzing crash dumps.

Format

CLUE REGISTER [/CPU [cpu-id|ALL]
|/PROCESS [/ADDRESS=n|INDEX=n
|/IDENTIFICATION=n|process-name|ALL]]


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 the 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 (" ").


Qualifiers

/ADDRESS=n

Specifies the PCB address of the desired process when used with CLUE REGISTER/PROCESS.

/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=n

Specifies the identification of the desired process when used with CLUE REGISTER/PROCESS.

/INDEX=n

Specifies the index of the desired process when used with CLUE REGISTER/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.

Description

The CLUE REGISTER command displays the active register set of the crash CPU. It also identifies any known data structures, symbolizes any system virtual addresses, interprets the processor status (PS), and attempts to interpret R0 as a condition code.

If neither /CPU nor /PROCESS is specified, the parameter (cpu-id or process-name) is ignored and the registers for the SDA current process are displayed.


CLUE SCSI

Displays information related to SCSI and Fibre Channel.

Format

CLUE SCSI {/CONNECTION=n |/PORT=n|/REQUEST=n|/SUMMARY}


Qualifiers

/CONNECTION=scdt-address

Displays information about SCSI connections and decodes the SCSI connection descriptor data structure identified by the SCDT address.

/PORT=spdt-address

Displays all or a specific port descriptor identified by its SPDT address.

/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.


SDA$CBB_BOOLEAN_OPER

Performs a Boolean operation on a pair of CBBs.

Format

int sda$cbb_boolean_oper (CBB_PQ input_cbb, CBB_PQ output_cbb, int operation);


Arguments

input_cbb


OpenVMS usage address
type CBB structure
access read only
mechanism by reference

The address of the first (input) CBB structure.

output_cbb


OpenVMS usage address
type CBB structure
access read/write
mechanism by reference

The address of the second (output) CBB structure.

operation


OpenVMS usage longword
type longword (unsigned)
access read only
mechanism by value

The desired operation from the following list:
  • CBB$C_OR---The logical sum of the two CBBs is performed and the result (B = A | B) is written to the output CBB.
  • CBB$C_BIC---The logical product with complement of the two CBBs is performed and the result (B = B & ~A) is written to the output CBB.

Description

The desired Boolean operation is performed on the two CBB structures, and the result is written to the second (output) structure.

Condition Values Returned

SS$_WASCLR The value 0 is returned if no bits are set in the resulting output CBB.
SS$_WASSET The value 1 is returned if any bit is set in the resulting output CBB.
SS$_BADPARAM The number of valid bits in the input and output CBBs are different.

SDA$CBB_CLEAR_BIT

Clears the specified bit in a CBB.

Format

int sda$cbb_clear_bit (CBB_PQ cbb, int bit);


Arguments

cbb


OpenVMS usage address
type CBB structure
access read/write
mechanism by reference

The address of the CBB structure to be modified.

bit


OpenVMS usage longword
type longword (unsigned)
access read only
mechanism by value

The bit in the CBB to be cleared. If the bit number is -1, clears all bits.

Description

The specified bit (or all bits) in the CBB is cleared.

Condition Values Returned

SS$_NORMAL Successful completion
SS$_BADPARAM The bit number is out of range

SDA$CBB_COPY

Copies the contents of one CBB to another.

Format

int sda$cbb_copy (CBB_PQ input_cbb, CBB_PQ output_cbb);


Arguments

input_cbb


OpenVMS usage address
type CBB structure
access read only
mechanism by reference

The address of the CBB structure to be copied.

output_cbb


OpenVMS usage address
type CBB structure
access write only
mechanism by reference

The address of the CBB structure to receive the copy.

Description

The specified CBB is copied.

Condition Values Returned

None  

SDA$CBB_FFC

Locates the first clear bit in a CBB.

Format

int sda$cbb_ffc (CBB_PQ cbb, int start_bit);


Arguments

cbb


OpenVMS usage address
type CBB structure
access read only
mechanism by reference

The address of the CBB structure to be searched.

start_bit


OpenVMS usage longword
type longword (unsigned)
access read only
mechanism by value

The first bit in the CBB to be checked.

Description

The CBB structure is searched, starting at the specified bit, for a clear bit.

Condition Values Returned

Bit_number If a clear bit is found, its bit number is returned. If no clear bit is found (all bits from start_bit to cbb->cbb$l_valid_bits are set), then the number of valid bits is returned.

SDA$CBB_FFS

Locates the first set bit in a CBB.

Format

int sda$cbb_ffs (CBB_PQ cbb, int start_bit);


Arguments

cbb


OpenVMS usage address
type CBB structure
access read only
mechanism by reference

The address of the CBB structure to be searched.

start_bit


OpenVMS usage longword
type longword (unsigned)
access read only
mechanism by value

The first bit in the CBB to be checked.

Description

The CBB structure is searched, starting at the specified bit, for a set bit.

Condition Values Returned

Bit_number If a set bit is found, its bit number is returned. If no set bit is found (all bits from start_bit to cbb->cbb$l_valid_bits are clear), then the number of valid bits is returned.

SDA$CBB_INIT

Initializes a CBB structure to a known state.

Format

void sda$cbb_init (CBB_PQ cbb);


Arguments

cbb


OpenVMS usage address
type CBB structure
access read only
mechanism by reference

The address of the CBB structure to be initialized.

Description

The fields of the CBB that describe its layout are initialized as necessary for a CPU CBB. The actual bitmask is zeroed.

Condition Values Returned

None  

SDA$CBB_SET_BIT

Sets the specified bit in a CBB.

Format

int sda$cbb_set_bit (CBB_PQ cbb,int bit);


Arguments

cbb


OpenVMS usage address
type CBB structure
access read/write
mechanism by reference

The address of the CBB structure to be modified.

bit


OpenVMS usage longword
type longword (unsigned)
access read only
mechanism by value

The bit in the CBB to be set. If the bit number is -1, set all bits.

Description

The specified bit (or all bits) in the CBB is set.

Condition Values Returned

SS$_NORMAL Successful completion.
SS$_BADPARAM The bit number is out of range.

SDA$CBB_TEST_BIT

Tests the specified bit in a CBB.

Format

int sda$cbb_test_bit (CBB_PQ cbb,int bit);


Arguments

cbb


OpenVMS usage address
type CBB structure
access read only
mechanism by reference

The address of the CBB structure to be tested.

bit


OpenVMS usage longword
type longword (unsigned)
access read only
mechanism by value

The bit in the CBB to be tested.

Description

The specified bit in the CBB is tested and its value returned.

Condition Values Returned

SS$_WASSET The specified bit was set.
SS$_WASCLR The specified bit was clear.
SS$_BADPARAM The bit number is out of range.

SDA$DELETE_PREFIX

Deletes all symbols with the specified prefix.

Format

void sda$delete_prefix (char *prefix);


Arguments

prefix


OpenVMS usage char_string
type character string
access read only
mechanism by reference

The address of the prefix string.

Description

This routine searches the SDA symbol table and deletes all symbols that begin with the specified string.

Condition Values Returned

None  


Previous Next Contents Index