ext and extp subcommands

The ext and extp subcommands display a specific area from a structure.

Format

ext [-p] EffectiveAddress delta [size | count]

extp [-p] PhysicalAddress delta [size | count]

Parameters

Item Description
-p Indicates that the delta argument is the offset to a pointer to the next area.
EffectiveAddress Specifies the effective or virtual address at which to begin displaying values. Symbols, hexadecimal values, or hexadecimal expressions can be used to specify the address.
PhysicalAddress Specifies the physical or real address at which to begin displaying values. Symbols, hexadecimal values, or hexadecimal expressions can be used to specify the address.
delta Specifies the offset to the next area to be displayed or the offset from the beginning of the current area to a pointer to the next area. This argument is a hexadecimal value.
size Specifies the hexadecimal value that indicates the number of words to display.
count Specifies the hexadecimal value that indicates the number of entries to traverse.

If the -p flag is not specified, these subcommands display the number of words indicated in the size argument. They then increment the address by the delta and display the data at that location. This procedure is repeated for the number of times indicated in the count parameter.

If the -p flag is specified, these subcommands display the number of words indicated by the size parameter. The next address from which data is to be displayed is then determined by using the value at the current address plus the offset indicated in the delta parameter (for example, *(addr+delta)). This procedure is repeated for the number of times indicated in the count parameter.

If an array exists, it can be traversed displaying the specified area for each entry of the array. These subcommands can also be used to traverse a linked list displaying the specified area for each entry.

Other

No aliases.

Examples

The following is an example of how to use the exp and the expt subcommands:

KDB(0)> ppda  

Per Processor Data Area [0101A9C0]  
csa..............000000000184EE00 
mstack...........000000000184BE00 
fpowner..........0000000000000000 
curthread........F100060004066400 
syscall..........00000000003CDA21 
worst_run_pri................00FF 
run_pri........................FF 
v_pnda...........000000000126CCB0 
cpunidx......................0000 
wait_thread......F100060004066400 
ppda_pal[0]..............00000000 
ppda_pal[1]..............00000000 
ppda_pal[2]..............00000000 
ppda_pal[3]..............00000000 
phy_cpuid....................0000 
sradid.......................0000 
pvpa.............0000000001130400 
slb_reload...................0000 
slb_index....................0000 
slb_stoimask.................0000 
slb_stoibits.................0000 
slb_stab_mask....0000000000000000 
slb_g_start......0000000000000000 
slb_g_nesids.....0000000000000000 
slb_ksp_start....0000000000000000 
slb_ksp_nesids...0000000000000000 
slb_glp_start....0000000000000000 
slb_glp_nesids...0000000000000000 
slb_glp_tbl......0000000000000000 
slb_lgpg_start...0000000000000000 
slb_lgpg_nesids..0000000000000000 
slb_slbsave......0000000000000000 
slb_recurse_cnt..............0000 
slb_stab_addr....0000000000000000  
KDB(0)> ext -p 000000000184EE00 0 10 2 // csa address from the ppda 
mststack+020E00: F0000000 2FF47600 00000000 00000000 ..../.v......... 
mststack+020E10: 00000000 00000000 00000000 00000000 ................ 
mststack+020E20: 00000000 00000000 A0000000 000010B2 ................ 
mststack+020E30: 00000000 000302A0 00000000 0003023C ...............< 

__ublock+000000: 00000000 00000000 00000000 00000000 ................ 
__ublock+000010: 00000000 00000000 00000000 00000000 ................ 
__ublock+000020: 0B000000 00000000 A0000000 00009032 ...............2 
__ublock+000030: 00000000 00025138 00000000 00028828 ......Q8.......(

  KDB(0)> ext 000000000184BE00 3000 10 2 // mstsave address from the ppda 
mststack+01DE00: 00000000 0184EE00 00000000 00000000 ................ 
mststack+01DE10: 00000000 00000000 00000000 00000000 ................ 
mststack+01DE20: 00000000 00000000 A0000000 000090B2 ................ 
mststack+01DE30: 00000000 0000944C 00000000 0009A798 .......L........  
mststack+020E00: F0000000 2FF47600 00000000 00000000 ..../.v......... 
mststack+020E10: 00000000 00000000 00000000 00000000 ................ 
mststack+020E20: 00000000 00000000 A0000000 000010B2 ................ 
mststack+020E30: 00000000 000302A0 00000000 0003023C ...............<  

KDB(0)>