Understanding Language Environment IPCS VERBEXIT – LEDATA

Purpose

Use the LEDATA verb exit to format data for Language Environment®. This VERBEXIT provides information about the following topics:
  • A summary of Language Environment at the time of the dump
  • Runtime Options
  • Storage Management Control Blocks
  • Condition Management Control Blocks
  • Message Handler Control Blocks
  • C/C++ Control Blocks
  • COBOL Control Blocks

Format

VERBEXIT LEDATA [ 'parameter[,parameter]...'] 

Report Type Parameters:
 [  SUM  ]
 [  HEAP  |  STACK  | SM  ]
 [  HPT(number) [ HPTTCB (address) ] [ HPTCELL(address) ] [ HPTLOC(location) ] ]
 [  CM  ]
 [  MH  ]
 [  CEEDUMP  ]
 [  COMP(value) ]
 [  PTBL(value)  ]
 [  ALL  ]

Data Selection Parameters: 
 [  DETAIL  |  EXCEPTION  ]

Control Block Selection Parameters: 

 [  CAA(caa-address)  ]
 [  DSA(dsa-address)  ]
 [  TCB(tcb-address)  ]
 [  ASID(address-space-id)  ]
 [  NTHREADS(value)  ]

Parameters

The following sections describe the different types of supported parameters. Note that only hexadecimal characters can be specified as addresses provided in LEDATA parameters. Special characters cause the formatter to fail. Therefore, to specify a 64–bit address as a parameter, it must be in the form like 123456789 instead of 1_23456789.

Report type parameters

Use the following parameters to select the type of report. You can specify as many reports as you wish. If you omit these parameters, the default is SUMMARY.
SUMmary
Requests a summary of the Language Environment at the time of the dump. The following information is included:
  • TCB address
  • Address Space Identifier
  • Language Environment Release
  • Active members
  • Formatted CAA, PCB, RCB, EDB and PMCB
  • Runtime Options in effect
HEAP | STACK | SM
HEAP
Requests a report on Storage Management control blocks pertaining to HEAP storage, as well as a detailed report on heap segments. The detailed report includes information about the free storage tree in the heap segment, and information about each allocated storage element. It also specifies a heap pools report with information useful to find potential damaged cells. Note that Language Environment does not provide support for alternative Vendor Heap Manager (VHM) data.
STACK
Requests a report on Storage Management control blocks pertaining to STACK storage.
SM
Requests a report on Storage Management control blocks. This is the same as specifying both HEAP and STACK.
HPT(number) [ HPTTCB (address) ] [ HPTCELL(address) ] [ HPTLOC(location) ]
HPT(number)
Requests that the HEAPPOOLS trace, if available, be formatted. If the value is 0 or *, the trace for every HEAPPOOLS pool id is formatted. If the value is a single number (1-12), the trace for the specific HEAPPOOLS pool id is formatted. If only the HPT keyword is specified with no value, the trace behaves similar to when the value is *. If no filter is specified, all of the entries are formatted for the specific pool id.
HPTTCB (address)
Filters the HEAPPOOLS trace table, if available, printing only those entries for a given TCB address (address).
HPTCELL(address)
Filters the HEAPPOOLS trace table, if available, printing only those entries for a given cell address (address).
HPTLOC(location)
Filters the HEAPPOOLS trace table, if available, printing only those entries for a given virtual storage location (location). The following values are valid:
31
Display entries located in virtual storage below the bar.
64
Display entries located in virtual storage above the bar.
ALL
Display entries located in virtual storage below or above the bar.
Note:
  1. Filter options without specifying HPT implies HPT(*).
  2. You can specify multiple options together, like HPTTCB and HPTCELL. All pieces of information must match the trace entry for it to be formatted. If location and cell contradict each other, such as HPTLOC(31) and HPTCELL(64bit addr), an error will be displayed.
CM
Requests a report on Condition Management control blocks.
MH
Requests a report on Message Handler control blocks.
CEEdump
Requests a CEEDUMP-like report. Currently this includes the traceback, the Language Environment trace, and thread synchronization control blocks at process, enclave and thread levels.

Start of changeIf the dump output has multiple nested enclaves or multiple nested CEEPIPI Main-DP environments, tracebacks will appear for each enclave in each Main-DP environment. This is similar to how the tracebacks appear in the CEEDUMP output. See the section Multiple enclave dumps for a description of CEEDUMP output when multiple enclave and Main-DP environments are present.End of change

PTBL(value)
Requests that PreInit tables be formatted according to the following values:,
CURRENT
If current is specified, the PreInit table associated with the current or specified TCB is displayed.
address
If an address is specified, the PreInit table at that address is specified.
*
All active and dormant PreInit tables within the current address space are displayed; this option is time-consuming.
ACTIVE
The PreInit tables for all TCBs in the address space are displayed.
COMP(value)
Requests component control blocks to be formatted according to the following values:
C
Requests a report on C/C++ runtime control blocks.
CIO
Requests a report on C/C++ I/O control blocks.
COBOL
Requests a report on COBOL-specific control blocks.
PLI
Requests a report on PL/I-specific control blocks.
ALL
Requests a report on all the preceding control blocks.

If the value specified in COMP is not one of the values (C, CIO, COBOL, PLI, or ALL), a message is displayed and it continues executing as if COMP(ALL) was specified.

Note: The ALL parameter for LEDATA also generates a report that includes all the component control blocks.
ALL
Requests all above reports, as well as C/C++, COBOL, and PL/I reports.

Data selection parameters

Data selection parameters limit the scope of the data in the report. If no data selection parameter is selected, the default is DETAIL.
DETail
Requests formatting all control blocks for the selected components. Only significant fields in each control block are formatted. For the Heap and Storage Management Reports, the DETAIL parameter will provide a detailed heap segment report for each heap segment in the dump. The detailed heap segment report includes information on the free storage tree in the heap segments, and all allocated storage elements. This report will also identify problems detected in the heap management data structures. For more information about the Heap Reports, see Understanding the HEAP LEDATA output.
EXCeption
Requests validating all control blocks for the selected components. Output is only produced naming the control block and its address for the first control block in a chain that is invalid. Validation consists of control block header verification at the very least.

For the Summary, CEEDUMP, C/C++, COBOL, and PL/I reports, the EXCEPTION parameter has not been implemented. For these reports, DETAIL output is always produced.

Control block selection parameters

Use these parameters to select the control blocks used as the starting points for formatting.
CAA(caa-address)
specifies the address of the CAA. If not specified, the CAA address is obtained from the TCB.
DSA(dsa-address)
specifies the address of the DSA. If not specified, the DSA address is assumed to be the register 13 value for the TCB.
TCB(tcb-address)
specifies the address of the TCB. If not specified, the TCB address of the current TCB from the CVT is used.
ASID(address-space-id)
specifies the hexadecimal address space ID. If not specified, the IPCS default address space ID is used. This parameter is not needed when the dump only has one address space.
NTHREADS(value)
specifies the number of TCBs for which the traceback will be displayed. If NTHREADS is not specified, value will default to (1). If value is specified as asterisk (*), all TCBs will be displayed.

Examples

For examples of the output produced by LEDATA and explanation of the content, refer to Understanding the Language Environment IPCS VERBEXIT LEDATA output.