/sys$common/syshlp/SDA.HLB  —  VALIDATE
    Validates the specified item (process, queue, and so forth).

1  –  PFN_LIST

    Validates that the page counts on lists are correct.

    Format

      VALIDATE PFN_LIST  {/ALL (d)  | [/BAD | /FREE | /MODIFIED |

                         /PRIVATE | /UNTESTED | /ZERO]}

1.1  –  Qualifiers

1.1.1    /ALL

    Validates all the PFN lists: bad, free, modified, untested,
    zeroed free pages, and private pages.

1.1.2    /BAD

    Validates the bad page list.

1.1.3    /FREE

    Validates the free page list.

1.1.4    /MODIFIED

    Validates the modified page list.

1.1.5    /PRIVATE

    Validates all private page lists.

1.1.6    /UNTESTED

    Validates the untested page list that was set up for deferred
    memory testing.

1.1.7    /ZERO

    Validates the zeroed free page list.

2  –  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 ]

2.1  –  Qualifiers

2.1.1    /ALL

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

2.1.2    /BAP

    Checks free packets in bus addressable pool.

2.1.3    /HEADER

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

2.1.4    /MAXIMUM_BYTES

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

2.1.5    /NONPAGED

    Checks free packets in nonpaged pool.

2.1.6    /PAGED

    Checks free packets in paged pool.

2.1.7    /SUMMARY

    Displays only a summary of corrupted pool packets found.

3  –  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]

3.1  –  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, 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 (" ").

3.2  –  Qualifiers

3.2.1    /ADDRESS

       /ADDRESS = pcb address

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

3.2.2    /HEADER

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

3.2.3    /ID

       /ID = nn
       /INDEX = nn

    Specifies the process to be validated by its index into the
    system's list of software process control blocks (PCBs), or by
    its process identification. You can supply the following values
    for nn:

    o  The process index itself.

    o  A 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.

3.2.4    /MAXIMUM_BYTES

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

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

3.2.6    /POOL

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

    (Required) Causes process pool validation to be performed. Use of
    a keyword on the /POOL qualifier allows the user to specify which
    process pool is to be validated (P0, P1, Image Activator Pool, or
    ALL). Default: ALL

3.2.7    /SUMMARY

    Displays only a summary of the corrupted pool packets found.

3.2.8    /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 text:

    Options ignored for System process: POOL

4  –  QUEUE

    Validates the integrity of the specified queue by checking the
    pointers in the queue.

    Format

      VALIDATE QUEUE  [address]

                      [/BACKLINK | /LIST | /PHYSICAL

                      | /QUADWORD | /SELF_RELATIVE | /SINGLY_LINKED]

4.1  –  Parameter

 address

    Address of an element in a queue.

    If you specify the period (.)  as the address, SDA uses the last
    evaluated expression as the queue element's address.

    If you do not specify an address, the VALIDATE QUEUE command
    determines the address from the last issued VALIDATE QUEUE
    command in the current SDA session.

    If you do not specify an address, and no queue has previously
    been specified, SDA displays the following error message:

    %SDA-E-NOQUEUE, no queue has been specified for validation

4.2  –  Qualifiers

4.2.1    /BACKLINK

    Allows doubly linked lists to be validated from the tail of the
    queue. If the queue is found to be broken when validated from the
    head of the queue, you can use /BACKLINK to narrow the list of
    corrupted entries.

4.2.2    /LIST

    Displays the address of each element in the queue.

4.2.3    /PHYSICAL

    Allows validation of queues whose header and links are physical
    addresses.

4.2.4    /QUADWORD

    Allows the validate operation to occur on queues with linked
    lists of quadword addresses.

4.2.5    /SELF_RELATIVE

    Specifies that the selected queue is a self-relative queue.

4.2.6    /SINGLY_LINKED

    Allows validation of queues that have no backward pointers.

5  –  SHM_CPP

    Validates all the shared memory common property partitions (CPPs)
    and the counts and ranges of attached PFNs; optionally, it can
    validate the contents of the database for each PFN.

    Format

      VALIDATE SHM_CPP  [/qualifiers]

5.1  –  Qualifiers

5.1.1    /ADDRESS

       /ADDRESS=n

    Validates the counts and ranges for a single shared memory CPP
    given the address of the SHM_CPP structure.

5.1.2    /ALL

    Validates all the shared memory CPPs. This is the default.

5.1.3    /IDENT

       /IDENT=n

    Validates the counts and ranges for a single shared memory CPP.

5.1.4    /PFN

    Validates the PFN database contents for each attached PFN. The
    default is all lists (free, bad, untested) plus the PFN database
    pages and the complete range of PFNs in the CPP.

    You can limit which lists are validated by specifying one or
    more keywords from the following table. If you specify multiple
    keywords, enclose them in parentheses and separate keywords with
    a comma.

    ALL_FRAGMENTS   Validates the complete range of PFNs in the CPP.
    BAD             Validates only the bad page list.
    FREE            Validates only the free page list.
    PFNDB           Validates the PFNs containing the PFN database.
    UNTESTED        Validates only the untested page list.

    If you specify the /PFN without /ALL, /IDENT, or /ADDRESS, the
    system validates the PFN lists from the last shared memory CPP.

6  –  TQEIDX

    Validates all the data structures associated with timer queue
    entry index (TQEIDX) structures.

    Format

      VALIDATE TQEIDX
Close Help