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)>